4

Mysql 工作台(或任何其他工具)有没有办法在没有数据的情况下导出数据库模式,并且不会自动将AutoIncrement值设置为表行数?

例如:我使用--no-data optionMySql Workbench 导出。假设在导出之前表上实际上有 100 行数据,那么导出的脚本将没有数据,但AUTO_INCREMENT=100在表创建脚本上。

我需要能够动态创建一个空的数据库创建脚本以进行备份和部署。

4

3 回答 3

0

是的,总是有办法的。仅在 mysql 中导出结构时,需要取消选中“对象创建选项”选项下的一个复选框,即“AUTO_INCREMENT”(就在“开始”按钮上方),您将获得预期的结果。

如果您有任何疑问,请告诉我。

于 2012-08-31T07:13:12.113 回答
0

我有同样的问题,但我已经解决了:

mysqldump --no-data=true -u username -p dbname > table.sql && sed -i 's/AUTO_INCREMENT=[0-9]\+/AUTO_INCREMENT=1/g' table.sql
于 2017-04-21T11:00:30.070 回答
0

我遇到了同样的问题,终于找到了解决方案。问题是当您导入数据时,它会将表的当前自动增量值存储到模型中。如您所愿,您需要在将模型导出为 SQL 之前手动编辑此值。

为了这 :

  1. 右键单击表名并选择Edit '<Table name>'(或双击它)
  2. Optionstab 和下General Options,将Auto Increment值更改为 1
  3. 保存您的模型
  4. 导出它

在此处输入图像描述

于 2021-10-06T07:39:11.330 回答