
WPホームページ研究所運営サポートチーム監修のオムスビ(@OMUSUVIcom)です。
データベースの事前チェックでまとめてテストデータを差し込みたい場面がありますよね。カンタンなループを使えばPHPからテーブル内に値を保存できます。パフォーマンスの確認作業にご活用いただけます。
データベースの初期設定については別の記事に書いたのでぜひチェックください。
SQLiteでテストデータを10万件登録する方法
以下の方法であれば1万件でも5万件でもでもテスト可能です。ただし、サーバー側の負荷もあるのでいきなり本番サイトでは行わず先にローカルで立ち上げたテスト環境でお試しすることをおすすめいたします。
10万件の仮データを挿入する方法
SQLiteの登録速度のパフォーマンス測定でまとめてデータを登録してみましょう。たとえばもっとも簡単なテストとして10万回に到達するまでSQL文のinsertをループさせる方法が下記となります。
$id = 1;
$i = 0;
while ($i < 100000) {
$name = $id;
$stmt = $db->prepare("INSERT INTO data_base_name(id,name) VALUES (:id,:name)");
$stmt->bindValue(':id', $id, PDO::PARAM_INT);
$stmt->bindValue(':name', $name);
$stmt->execute();
$id++;
$i++;
}
実際に登録した状態が以下ですね。書き方を間違えると無限ループに入って運営サーバーに迷惑がかかるのでまずはローカルで立ち上げたテストサーバー等で事前チェックをするのがおすすめです。
名前に「テスト」や「商品」などを頭文字をつけるならご自由に追加くださいませ。実際に登録する予定のデータ値と同じ書き方にすれば正確なパフォーマンスが測定できます。実際に登録した例です。
上記では「$id」を「name」の登録に流用しているので直前に文字を連結すればOK。
$name = 'テスト' . $id;
実際は本番で使用する環境に合わせてフィールド名を決定していきましょう。
まとめ
本日は「SQLiteでテストを10万件登録する方法」を解説いたしました。
データベースは本当に奥が深いですね。SQL文の書き方でさまざまな指定が可能なので検証では色々と試せます。データの型もSQLiteはかなり少ないのでMySQLと比べたらそこまで迷わずに使えます。
ただ、SQLiteは型の自動変換もあるので少し慣れが必要かもしれません。
最新式の無料プラグインを事前公開
WordPressは公式サイトに登録済みのプラグインだけで全機能を補足しきれません。当サイトでは使いやすさを追求した魅惑的なプラグインを無料でダウンロードいただけます。運営ホームページのマーケティング力をさらに高めるチャンスです。まずは無料でDLしてお試しくださいませ。
→ 改良されたプラグインを確認する