【问题标题】:Alter database to match model更改数据库以匹配模型
【发布时间】:2011-06-23 06:46:15
【问题描述】:

最初,我使用 MySQL Workbench 中的数据建模来设计一个由一系列表(即列和关系)组成的数据库。

然后使用 Database -> Forward Engineer,我创建了一个数据库,并将数据插入到表中。

现在我意识到我设计的模型需要一些更改,因此我通过插入列更改了一些表。我的问题是,如何让 MySQL Workbench 更改表?

Using Database -> Synchronize Model, Update Source 只是生成一堆 CREATE TABLE IF NOT EXISTS sql 语句,并且由于表存在,没有任何变化。

【问题讨论】:

    标签: mysql-workbench


    【解决方案1】:

    您要查找的内容在模型菜单中数据库/同步模型

    【讨论】:

      【解决方案2】:

      由于我无法让File -> Export -> Forward Engineer SQL ALTER Script 工作,所以我备份了数据,删除了表,重新创建了它们,然后导入了数据。我宁愿找到一种方法让 MySQL Workbench 从我的模型中的更改生成 ALTER 命令

      【讨论】:

      • 这个好像没有了
      【解决方案3】:

      2011 年的答案不再是最新的。我很难在最近的版本中找到该选项。这是新程序(至少适用于 MySQLWorkbench 6.2):

      完成模型编辑后,打开Database -> Synchronize with Any Source

      在步骤Select Source 你有 3 个部分

      • 来源:选择Model Schemadata
      • 目的地:选择Live Database Server
      • 将更新发送到:选择是更新实时数据库还是只想将更改保存到.sql 文件

      继续向导,然后您可以查看将要执行的表和 sql 查询。您也可以忽略某些表的更新。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2016-12-21
        • 1970-01-01
        • 2019-04-17
        • 1970-01-01
        • 2013-07-02
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多