3

「ファイアアンドフォーゲット」と考えるクエリがかなりあります。

これらは単に挿入、更新などを記録しているという意味で。それほど重要ではなく、ユーザーが目にするフロントエンドで決して使用されないデータ。

これは の理想的なケースのように思えmysql_unbuffered_queryます。

これは賢明ですか?

innodbを使用しているため、次のようなものを使用することINSERT DELAYEDはできません。

ありがとう!

4

1 に答える 1

1

http://www.php.net/manual/en/mysqlinfo.concepts.buffering.phpを読んだ後:

これらの特性に従って、バッファリングされたクエリは、限られた結果セットしか期待できない場合、またはすべての行を読み取る前に返される行の量を知る必要がある場合に使用する必要があります。より大きな結果が予想される場合は、バッファなしモードを使用する必要があります。

更新、挿入、および削除には結果セットがないため、バッファリングされていないクエリはselectのみ役立つようです。

これを除いて、バッファリングされていない更新、挿入、および削除を使用しても問題はありません。

完全な結果セットがサーバーからフェッチされない限り、同じ接続を介してそれ以上クエリを送信することはできません。バッファリングされていないクエリは、「使用結果」とも呼ばれます。

では、last_insert_idaffected_rowsは結果ですか? これらの情報を取得するためにmysql_fetch * が実行されていないため、信じられません。

したがって、バッファリングされていないクエリを使用してパフォーマンスが向上した場合は、それを使用してください。

于 2012-07-01T21:46:58.993 に答える