我正在做一个我无法访问phpmyadmin的项目。我想看看表的结构和数据。我怎么能用mysql查询呢?我使用了DESCRIBE tablename
,但只显示了列列表。有任何想法吗?我可以使用另一个查询SELECT * FROM tablename
,但我只是想知道哪里有任何命令可以达到目的?我还需要知道我的表格列的类型。
答案 0 :(得分:1)
要获取表的列列表,请使用DESCRIBE SQL语句。 DESCRIBE提供有关表中列的信息:语法如下:
DESCRIBE TableName
离。 DESCRIBE products;
会给出:
+-------------+---------------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-------------+---------------------+------+-----+---------+----------------+
| product_id | int(10) unsigned | NO | PRI | NULL | auto_increment |
| url | varchar(100) | NO | UNI | NULL | |
| name | varchar(50) | NO | | NULL | |
| description | varchar(255) | NO | | NULL | |
| price | decimal(10,2) | NO | | NULL | |
| visible | tinyint(1) unsigned | NO | MUL | 1 | |
+-------------+---------------------+------+-----+---------+----------------+
要获取数据库中的表列表,请使用以下SQL语句:
SHOW TABLES
检索现有表的表定义
SHOW CREATE TABLE TableName;
另请查看此链接以获取与MySQL表相关的更多命令:MySQL Table Commands
答案 1 :(得分:0)
SELECT COLUMN_NAME, DATA_TYPE, IS_NULLABLE, COLUMN_DEFAULT
FROM INFORMATION_SCHEMA.COLUMNS;
应该让你开始。请参阅MySQL文档中的第20章。
答案 2 :(得分:0)
mysqli_fetch_fields
可用于获取mysqli_result
响应的元数据。
$link = mysqli_connect("host");
$result = mysqli_query($link, "select * from foo");
$meta = mysqli_fetch_fields($result);
foreach ($meta as $column) {
echo "Name: {$column->name}\n";
echo "Table: {$column->table}\n";
echo "Max. Len: {$column->max_length}\n";
echo "Length: {$column->length}\n";
echo "charsetnr: {$column->charsetnr}\n";
echo "Flags: {$column->flags}\n";
echo "Type: {$column->type}\n";
}
$result->data_seek(0);
while ($row = $result->fetch_assoc()) {
foreach ($row as $name => $value) {
echo "{$name} = {$value}\n";
}
}
mysqli_free_result($result);
PDOStatement::getColumnMeta
为PDO
查询提供了类似的功能。
答案 3 :(得分:0)
freq = (4 * 11.9) / 128
这将显示详细信息。
希望这有帮助。