ホームページ >バックエンド開発 >PHPチュートリアル >テーブルに読み取りロックを追加した後、データをクエリできなくなるのはなぜですか?

テーブルに読み取りロックを追加した後、データをクエリできなくなるのはなぜですか?

WBOY
WBOYオリジナル
2016-06-23 14:25:551406ブラウズ

mysql_query("LOCK TABLES tablename READ;");$result=mysql_query($sql, $conn);mysql_query("UNLOCK TABLES;");

最初のステートメントをコメントアウトした後、レコードは通常どおりクエリできますが、最初のステートメントが使用されると何も見つかりません。


ディスカッション(解決策)への返信

読ませなくてもどうやって読むことができますか?

読むことは禁止されていますが、どうやって読むことができますか?
ただし、書き込みロックを追加すると書き込みが可能になります。読み取りロックを追加すると、このスレッド (単語ではない可能性があります) と他のスレッドだけが読み取り可能になり、誰も書き込みできないことになりますか?

議論する前にマニュアルをよく読んでください

議論する前にマニュアルをよく読んでください
私は英語の大部分を読むことができません。

中国語のマニュアルはありませんか?

中国語のマニュアルはありませんか?
そう言われて、中国語のマニュアルをダウンロードしました。
私が見たのは LOCK TABLES の部分でした。そのエイリアスを試してみましたが、それでも機能しませんでした。

中国語のマニュアルはありませんか?
MySQL コマンドラインインターフェイスで読み取りロックを試してみました。思っていたものと同じですが、PHP では機能しません。 。

私は混乱しています、私は自分で問題を見つけました。私の SELECT は 2 つのテーブルを使用しますが、1 つのテーブルのみをロックすると、このスレッドまたはセッションはこの 1 つのテーブルのみを読み取ることができ、他のテーブルは読み取りを拒否します。このように、SELECT では当然結果は見つかりません。
私は最初、エラーをテストするために別の単純な PHP プログラムを作成しましたが、この単純な PHP プログラムでもエラーが発生し続けました。コピー&ペースト後にパラメータを変更しなかったことが原因かもしれません。
投稿が落ち着くまで待ってから閉じます。他の人が私のように不注意にならないことを願っています。

ポスター このステートメントを使用するとテーブルをロックできないのはなぜですか

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。