1

mysql_num_rows が SELECT または SHOW コマンドのいずれかで返される行数を返す必要がある場合、特に SHOW TABLE コマンドでは 0 を返すことに気付きました。

代わりに、num 行ではなく、影響を受ける行数が表示されます。

これがバグなのか、それともここに何か欠けているのか、誰にでも教えてもらえますか?

4

4 に答える 4

3

SHOW TABLEコマンドは、データベース内のテーブル名を表示するために使用されます。一方、mysql_num_rowsは、クエリから取得した結果の数をカウントするために使用されます。このクエリは、要件に基づいて異なります...

于 2013-01-24T03:41:07.320 に答える
1

PHPドキュメントページに記載されているように:

結果セットから行数を取得します。このコマンドは、実際の結果セットを返す SELECT や SHOW などのステートメントに対してのみ有効です。

私の推測では、列挙するSHOW TABLES結果セットのタイプを生成する技術的なクエリではありません。mysql_num_rows

于 2013-01-24T03:31:22.527 に答える
1

これらの「ヘルパー」関数 ( 、など)SHOWでは、通常のテーブルのように結果を発行することはできません。EXPLAINDESCRIBE

しかし、これを行う方法を探しているなら、SHOW TABLESできるからです。

SELECT `table_name` FROM `information_schema`.`tables`
WHERE `table_schema`=DATABASE()
-- DATABASE() selects current database name
-- you can use the name of any database as a string instead

つまり、基本的にinformation_schemaデータベースを使用してその情報を取得できます。

于 2013-01-24T04:15:06.943 に答える
0

これは mysql のバグで、アップデートで修正されました。

于 2013-01-27T16:30:23.507 に答える