私は、大きな理由のために小さなテーブルに分割する必要のあるかなり大きなDBテーブルを取得しました。255行を挿入した後にMySQLが停止する
取り扱いは、この例に近いPHPを経由して行われます
// Note: It's an example and not working code - the actual function is much larger
function split_db()
{
$results = "
SELECT *
FROM big_table
";
foreach ($results as $result)
{
// Here I split the big_tables contents and ...
$some_val = $result->SomeVal;
// ...
$another_val = $result->AnotherVal;
// ... here I insert the contents in the different tables
$sql = "
INSERT
INTO first_small_table
// ...
VALUES
// ...
";
}
}
問題:クエリが255行、私はローカル環境またはテストサーバー上だ場合に関係なく挿入。
質問:なぜですか?何が間違っているのですか?何か不足していますか?そして、どうすればこれを避けることができますか? MySQLのクライアント・バージョンについて
情報:
- のDev-サーバー: 5.0.32、
- ローカルのDev-ENV: 5.1.41
私はMySQLのヒーローではないので、 Googleは(私に)意味がないので、助けと説明を感謝します。ありがとう!
'SELECT * FROM big_table'はすべての行を返しますか? –
@ Mahdi.Montgomeryはい、そうです。 – kaiser