0
我必须将一堆mysql表传输到不同服务器上的不同数据库。要重新创建表格,我正在使用我的代码中的SHOW CREATE TABLE
。SHOW CREATE TABLE语句仅返回create table语句
SHOW CREATE TABLE
总是返回2列,即表名和用于创建表的SQL。
是否有可能制定一个查询,只返回与创建表的SQL单列?
我必须将一堆mysql表传输到不同服务器上的不同数据库。要重新创建表格,我正在使用我的代码中的SHOW CREATE TABLE
。SHOW CREATE TABLE语句仅返回create table语句
SHOW CREATE TABLE
总是返回2列,即表名和用于创建表的SQL。
是否有可能制定一个查询,只返回与创建表的SQL单列?
如果您在使用show创建表的坚持,你可以使用下面的SQL + LINUX CMDS
mysql -uroot -p -Nsr -e 'SHOW CREATE TABLE schema.table_name\G'| tail -n +3 >> /tmp/ddl.sql
喔,如果你有一个以上的表,你可以使用CONCAT和一些信息表生成命令。
我没有使用Linux命令的选项,因为我通过.NET连接器访问mysql。显然,我可以将我的查询结果解析为适当的字符串,但返回单个字段的Query对于我的设计来说更可取。 – Fang