首页 > 解决方案 > 如何从 MySQL 中的 INFORMATION_SCHEMA 生成表模式?

问题描述

我试图在 MySQL 中使用 INFORMATION_SCHEMA 生成表结构。我需要相同的输出

SHOW CREATE TABLE Mytablename;

我的目的是为 mysql 中的表列表生成创建表脚本。请帮忙。我需要为 100 个表编写表脚本。像下面

CREATE TABLE `customer_list` (
`ID` smallint(5) unsigned NOT NULL DEFAULT '0',
`name` varchar(91) DEFAULT NULL,
`address` varchar(50) NOT NULL,
`zip_code` varchar(10) DEFAULT NULL,
`phone` varchar(20) NOT NULL,
`city` varchar(50) NOT NULL,
`country` varchar(50) NOT NULL,
`notes` varchar(6) NOT NULL DEFAULT '',
`SID` tinyint(3) unsigned NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8

标签: mysqlmysql-workbench

解决方案


从 INFORMATION SCHEMA 获取表结构的 SQL 查询如下,其中数据库名为“dbname”,表名为“Mytablename”:

SELECT *
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_SCHEMA = 'dbname'
AND TABLE_NAME = 'Mytablename';

推荐阅读