是否有可能以某种方式获得MySQL数据库的结构,或只是一些简单的查询表?
或者有没有别的方法,我怎么做?
是否有可能以某种方式获得MySQL数据库的结构,或只是一些简单的查询表?
或者有没有别的方法,我怎么做?
当前回答
我觉得你想要的是描述
DESCRIBE table;
您还可以使用SHOW TABLES
SHOW TABLES;
获取数据库中的表列表。
其他回答
我觉得你想要的是描述
DESCRIBE table;
您还可以使用SHOW TABLES
SHOW TABLES;
获取数据库中的表列表。
SELECT *
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_SCHEMA = 'test' AND TABLE_NAME ='products';
哪里Table_schema是数据库名称
用这个:
SHOW CREATE TABLE `users`;
会给你那张表的DDL吗
DESCRIBE `users`
将列出该表中的列
看一下INFORMATION_SCHEMA。表的表。它包含关于所有表的元数据。
例子:
SELECT * FROM `INFORMATION_SCHEMA`.`TABLES`
WHERE TABLE_NAME LIKE 'table1'
与其他方法相比,这种方法的优点是您可以轻松地将上面的查询作为其他查询中的子查询使用。
要获得整个数据库结构的CREATE TABLE语句集,使用mysqldump:
mysqldump database_name --compact --no-data
对于单表,在mysqldump中将表名加在db名之后。使用SQL和SHOW CREATE TABLE可以得到相同的结果:
SHOW CREATE TABLE table;
如果您喜欢列列表,则使用DESCRIBE:
DESCRIBE table;