SHOW TABLE STATUS
命令返回的行和列。有没有办法通过
SELECT
语句获得相同的信息,以便我可以以正常方式操纵结果?#1 楼
它的列多于SHOW TABLE STATUS;但是可以解决问题:SELECT * FROM information_schema.tables WHERE table_schema = DATABASE();
UPDATE 2011-06-07 19:02
SELECT table_name,Engine,Version,Row_format,table_rows,Avg_row_length,
Data_length,Max_data_length,Index_length,Data_free,Auto_increment,
Create_time,Update_time,Check_time,table_collation,Checksum,
Create_options,table_comment FROM information_schema.tables
WHERE table_schema = DATABASE();
这些查询如果您设置当前数据库,则可以正常工作。
还可以对特定数据库进行硬编码:
SELECT table_name,Engine,Version,Row_format,table_rows,Avg_row_length,
Data_length,Max_data_length,Index_length,Data_free,Auto_increment,
Create_time,Update_time,Check_time,table_collation,Checksum,
Create_options,table_comment FROM information_schema.tables
WHERE table_schema = 'mysql';
#2 楼
show table status like 'table1';
您不能以这种方式操作列,但是仅选择所需的表并获得正常的
SHOW TABLE STATUS
输出会更容易。 #3 楼
您可以将WHERE或LIKE用于SELECT:show table status where name='name';
#4 楼
无需选择当前数据库即可使用show table status
:show table status from DbName where name='TableName';
请参见文档:
SHOW TABLE STATUS
[{FROM | IN} db_name]
[LIKE 'pattern' | WHERE expr]
#5 楼
您可以使用此查询显示所有信息模式。SELECT * FROM information_schema.tables WHERE table_schema = DATABASE();
或简写:
显示表格状态,例如“ tableName”
评论
我没有看到其他答案中尚未发布的任何内容。
–超立方体ᵀᴹ
18 Mar 10 '18 at 17:01
评论
哪个限制行而不限制列,对吗?
–杰克·道格拉斯(Jack Douglas)
2012年3月27日在6:48
正确。您无法以这种方式操作列,但是仅选择所需的表并获得正常的SHOW TABLE STATUS输出更为容易。
– John L
2012年3月27日13:46