1

我正在植根 MySQL Workbench,我有一个 TILT。在 MySQL Workbench 初始屏幕中有两件事我不明白。

  • 创建连接并访问它时,我可以选择创建模式/数据库并创建表、脚本等。如果我创建一个名为example的数据库,我只能选择通过脚本创建表,而不是通过能效比图
  • 返回到 MySQL Workbench 初始屏幕,还有创建模型的选项(对我来说,它是一个模式/数据库,方式相同)。如果我们创建一个名为example的模型,就像在此中的上一项中一样,您可以创建脚本、视图、表,并具有创建 EER 图的区别

我想知道的是:

  1. 为什么有创建模式/数据库作为模型和 MySQL 连接的选项?

  2. 为什么我可以在两个选项中创建具有相同名称的模式/数据库来创建模式/数据库(MySQL 连接器和模型)而不会发生命名冲突?

  3. 如果它们是相同的东西,为什么当我创建模型时 MySQL 连接器不会自动同步以识别模型?

  4. 如果它们是同一件事,我可以在模型中而不是在 MySQL 连接器中为模式/数据库创建 EER 图吗?

感谢任何可以回答我这些问题的人。

4

1 回答 1

5

你从错误的前提开始。模型和连接是两个完全不同的东西(如果没有,为什么 MySQL Workbench 中会有不同的部分?)。

通过连接,您可以访问服务器并对其进行处理。创建用户、检索数据、创建数据库对象等。

然而,建模是设计数据库结构的任务。您创建的所有对象仅存在于该模型中。您可以从更高级别的视图设计您的结构,而不是深入到纯 SQL(如果您愿意,您也可以这样做)。在您对模型进行正向工程或将其同步到该服务器之前,没有任何东西可以到达服务器。第一种是简单地按照您设计的方式创建所有对象,后者是双向“合并”,即在模型和服务器内容之间生成差异并应用更改以使服务器上的结构成为与模型中的相同,反之亦然。

了解这种根本差异可以回答您上面的所有问题。

于 2014-02-01T10:20:27.690 回答