2

PHPまたは何らかの種類のmysqlクエリを使用して、mysqlテーブルのフィールド(列)の数を取得するにはどうすればよいですか? SELECT * FROM table_nameandなしでこれを行う方法はありmysql_num_fields()ますか? たぶん、1つのmysqlクエリで方法がありますか?

4

5 に答える 5

7
SELECT COUNT(*) totalColumns
FROM   INFORMATION_SCHEMA.COLUMNS
WHERE  table_name = 'table1' AND 
       TABLE_SCHEMA = 'databaseName'
于 2013-02-06T11:23:23.387 に答える
5

以下のクエリを使用して、テーブル内のフィールドの数を取得します。

SELECT COUNT(*)
FROM INFORMATION_SCHEMA.COLUMNS
WHERE table_schema = 'database_name'
  AND table_name = 'tbl_name'
于 2013-02-06T11:26:01.347 に答える
0
        $query = "select book_name from tbllibrary "; $result = mysql_query($query);
            //while loop to display mysql table field values in html text boxes

            $i = 0;
            while ($row = mysql_fetch_row($result))
                {
                    $count = count($row);
                    $y = 0;
                    while ($y < $count)
                    {
                        $c_row = current($row);
                        next($row);
                        $y = $y + 1;
                    }               
                        $book_name=$c_row;$i = $i + 1;
                    }

echo 'There are ' . $i. ' books available in the Library</p>';

ここで、変数 i は、book_name という名前の行の列の合計数を格納します。将来の使用のために変数 $book name を使用することもできますが、必須ではありません。

于 2016-07-07T08:09:55.963 に答える
0

@ user1858864 上記の回答はすべて問題ありませんが、 pdo を使用して php で提供したかっただけです。そして、すべてが私に関連しているように見えるので、私はあなたの質問とその回答に賛成票を投じました。編集用

<?php
try {
$con = new PDO('mysql:host=localhost;dbname=mydb;charset=utf-8','root','');
} catch(PDOException $e){
echo 'Connection failed'.$e->getMessage();
}
#count in pdo 
$count = ("SELECT count(*) FROM  table_name ");
$result =$con->prepare($count);
$result->execute();
$number= $result->fetchColumn();
echo  $number;
#count in pdo  
?>
于 2013-02-06T14:54:25.980 に答える
-2

次のクエリを使用できます

SELECT count(*) FROM table_name
于 2014-02-04T10:15:51.613 に答える