PHPでは、URIから大量のJSONデータを取得し、組み込みjson_decode
関数を介してそれを連想PHP配列にシリアル化します。
次に、配列を作成します。
$inserts = array();
$inserts
JSON連想配列をループして、JSON配列の各項目の配列に新しいキーと値のペアを追加します。
foreach($JSON_data as $key => $value) {
$inserts[] = "(".mysql_real_escape_string($value["prop1"]).","
.mysql_real_escape_string($value["prop2"]).","
.mysql_real_escape_string($value["prop3"]).")";
}
次に、すでに準備したインサートを内破するだけで、バルクインサートを実行します。
mysql_query("INSERT INTO `MyTable` (`col1`,`col2`,`col3`) VALUES ".implode(",",$inserts));
とにかく、私はmysql_*
家族がもはや使用されることを提案されていないことに気づきました。だから私は、このタイプのパターンが準備されたステートメントを使用してどのように達成されると想定されているのか、または新しい受け入れられた構造がどのようになっているのか疑問に思っていますか?私の懸念は、SQLインジェクションを排除することと、10未満の同時オープン接続(できれば1)でMySQLをできるだけ早く更新することです。また、物事を可能な限りシンプルかつ迅速に保つため。
または、そのような一括トランザクションを実行するための新しいパターンまたは推奨される方法がある場合。