Mysql

使用逆向工程(Mac OS)時,MySQL Workbench 不顯示表之間的關係

  • October 30, 2020

執行此程序並成功創建數據庫、表以及主鍵和外鍵後,當我對數據庫進行反向工程時,它不會顯示表之間的關係。我正在使用 MacBook Air(2017) Mojave 10.14.6,沒有暗模式,我嘗試將關係符號從 craw’s foot 更改為其他人,但仍然沒有運氣。

create database test_asdf;
use test_asdf;

create table Department
(id int not null unique auto_increment primary key,
name varchar(30));

create table Professor
(id int not null unique auto_increment primary key,
name varchar(30),
adress varchar(50),
department_id int,
section_id int,
foreign key (department_id) references Department(id));

現在問題是當我執行以下連接顯示時:

create database test_asdf8;
use test_asdf8;

create table table1
(id int not null unique auto_increment primary key,
name varchar(30),
table2_id int);

create table table2
(id int not null unique auto_increment primary key,
name varchar(30),
new_id int,
foreign key (new_id) references table1(id));

從第一個程式碼範例左側,從第二個程式碼範例右側

有人可以指出我在這裡做錯了什麼嗎?

經過進一步研究,這似乎實際上是一個錯誤。

而不是直接對數據庫進行逆向工程:

  • 創建一個新模型
  • 將所有程式碼保存在 .sql 文件中
  • 在模型選項卡中轉到文件導入逆向工程創建腳本
  • 檢查“將導入的對象放在圖表上”並執行,然後就可以了

仍然不確定為什麼上面的第一個例子不起作用(使用簡單的方法),而第二個例子會但是很好……希望這會有所幫助。

我使用逆向工程工具製作了 EER 圖,還嘗試使用 SQL 腳本製作模型。在這兩種情況下,我得到了相同的結果。我的數據庫中的各個表之間存在多個一對一關係的案例,但 EER 圖中顯示的所有關係都是一對多的。顯然,這是一個錯誤。

引用自:https://dba.stackexchange.com/questions/251647