2016-07-08 48 views
-2

ER-Diagram創建ER圖

我試圖讓卡恩臺這樣的SQL數據庫:

CREATE TABLE Kann(
id integer NOT NULL PRIMARY KEY, 
MiNr integer REFERENCES Employer(MiNr), 
FNr integer REFERENCES Ability(FNr) 
); 

的問題是,我希望甲骨文在KannCooperation表自動插入數據,當我插入數據手動在Ability,EmployerProject表中。

這怎麼可能?我應該使用觸發器還是其他PL/SQL元素,還是隻能用SQL來完成?

+0

我已經刪除了'SQL server'標籤,因爲它似乎它不參與。 – HoneyBadger

+0

http://dba.stackexchange.com/questions/7405/generate-sample-data-for-an-oracle-database – Kritner

+0

請解釋一下你想怎麼Oracle要將填滿這些字段;他們是固定值,查詢的結果,...? – Aleksej

回答

0

只能從現有的代碼構建圖ER

客人不願意需要TRIGER還是別的什麼,只是做relation數據庫之間。兩個表之間的關係將其中一個表中的主鍵與第二個表中的外鍵匹配。

或者只是在你的數據庫做Foreign Key。一個表中的FOREIGN KEY指向另一個表中的PRIMARY KEY。

CREATE TABLE Orders 
(
O_Id int NOT NULL PRIMARY KEY, 
OrderNo int NOT NULL, 
P_Id int FOREIGN KEY REFERENCES Persons(P_Id) 
) 

或者,如果你alredy有一個表:

ALTER TABLE Orders 
ADD FOREIGN KEY (P_Id) 
REFERENCES Persons(P_Id) 
+0

我可以做到這一點沒有PL/SQL? – DibaToner

+0

不,只是使用普通的SQL,但讀取abou關係 – OleksandrM

0

你的問題是不合邏輯的。忘記編碼,SQL等,只是用普通的語言思考。

表列出僱主所有的僱主,有ID號和他們的名字所示。沒有其他信息。同樣,表格能力顯示了所有被識別的「能力」,由一個數字標識並用一個名字來描述。

從此,您希望Oracle(或其他任何人)知道哪個僱主有哪些能力或能力?怎麼樣?

如果有可能知道哪個僱主擁有數據庫中的任何其他能力,那麼您首先不需要Kann表(事實上,如果它在數據庫中會違反正常性在大多數情況下,這對於數據庫來說是非常理想的質量)。