teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

4

加筆修正

2017/03/20 07:32

投稿

退会済みユーザー
answer CHANGED
@@ -17,3 +17,9 @@
17
17
  [MySQL :: MySQL 5.6 リファレンスマニュアル :: 13.2.5 INSERT 構文](https://dev.mysql.com/doc/refman/5.6/ja/insert.html)
18
18
 
19
19
  にあるように、VALUES句は`VALUES (~), (~), (~), (~)`という風に書けることがわかります。
20
+
21
+ あと、INSERT INTO文実行数はたいした数じゃないのに遅い、
22
+ 遅くてPHPの実行が打ち切られてしまう、
23
+ ということであれば、こんな情報も役に立つかもしれません:
24
+
25
+ [Mysqlでinsert、delete、updateが遅い場合の対策 - Qiita](http://qiita.com/daikiti1988/items/5311749b04a66547f22d)

3

加筆修正

2017/03/20 07:32

投稿

退会済みユーザー
answer CHANGED
@@ -12,4 +12,8 @@
12
12
  VALUES句を複数一度に書いてしまうのはダメなんでしょうか。
13
13
  `INSERT INTO ~ VALUES (~), (~), (~), (~)`
14
14
  みたいな。
15
- VALUES句要素を配列に格納しておいて最後に`implode()`で連結してしまうとか。
15
+ VALUES句要素を配列に格納しておいて最後に`implode()`で連結してしまうとか。
16
+
17
+ [MySQL :: MySQL 5.6 リファレンスマニュアル :: 13.2.5 INSERT 構文](https://dev.mysql.com/doc/refman/5.6/ja/insert.html)
18
+
19
+ にあるように、VALUES句は`VALUES (~), (~), (~), (~)`という風に書けることがわかります。

2

加筆修正

2017/03/20 07:26

投稿

退会済みユーザー
answer CHANGED
@@ -5,4 +5,11 @@
5
5
  その上で、どういうエラーだったか、
6
6
  実行時間が足りずに打ち切っているのか、
7
7
  メモリ不足で打ち切っているのか、
8
- 確認した上で対策を講じましょう。
8
+ 確認した上で対策を講じましょう。
9
+
10
+ それと、処理CでINSERT INTO文を実行していますが、
11
+ 1行ごとに実行していると時間が掛かるでしょうね。
12
+ VALUES句を複数一度に書いてしまうのはダメなんでしょうか。
13
+ `INSERT INTO ~ VALUES (~), (~), (~), (~)`
14
+ みたいな。
15
+ VALUES句要素を配列に格納しておいて最後に`implode()`で連結してしまうとか。

1

加筆修正

2017/03/16 10:42

投稿

退会済みユーザー
answer CHANGED
@@ -1,5 +1,6 @@
1
1
  webサーバーのエラーログやアクセスログをまず確認してほしい。
2
2
  思い込みで場当たり的な行動をしても解決しにくいので、現象を正確に捉えるようにしましょう。
3
+ エラーログへの情報が少なければ、設定ファイルを直してログ出力レベルを変更しましょう。
3
4
 
4
5
  その上で、どういうエラーだったか、
5
6
  実行時間が足りずに打ち切っているのか、