這樣建資料庫表關係對嗎,如何在資料庫中建立表與表的關係

時間 2021-12-23 07:06:45

1樓:匿名使用者

course表怎麼能有2個 primary key ;另外varchar2這個資料型別是自定義的麼?

如果不是,以我的理解,以course表為例,應該這麼寫:

create table course(

cno varchar(10) not null,

cname varchar(20) not null,

tno varchar(20) not null,

constraint pk_course primary key clustered (cno,tno)

)這是sybase的寫法。 mssql 則多加一行 on [primary]。

這應該是學生、教師、課程、成績4個表。學生表中有學號和姓名2個字段,學號為主鍵;教師中有教師號和姓名2個字段,教師號為主鍵;課程表中包含課程號、課程名、教師號,教師和課程可以是多對多的關係,所以主鍵為課程號+教師號;最後乙個成績表包含學號、課程號、成績,同樣,學號和課程號可以是多對多的關係,所以主鍵是學號+課程號。表關係非常明確,只是建表指令碼不對。

2樓:寒默憂傷

create table course(

cno varchar2(10) primary key,cname varchar2(20),

tno varchar2(20),

constraint pk_course primary key (cno,tno)

);你執行過了嗎?這個是有問題的吧?

3樓:匿名使用者

表可以建立但是外來鍵關係不對。

4樓:匿名使用者

這麼亂,重寫一遍吧。注意格式。

5樓:匿名使用者

可以,不過建議參考預設的那個建圖語句,最好還是分配一下空間什麼的

如何在資料庫中建立表與表的關係

6樓:神秘的大騙紙

1/, 最常用的一種: 減少重複資料.表a中擁有外來鍵,表b的資料基本是不允許刪除的.這時選擇對 insert 和 update 強制關係即可.

2/,其次,是增加乙個從屬表. 如果表a刪除一條記錄時,表b中也隨著刪除一條相關聯的記錄,那麼外來鍵關係中,表a的主鍵是表b的外來鍵。這種關係,實際上表b是表a的從屬表(即表a是父表),選擇對 insert 和 update 強制關係時,如果向表b中插入資料,表a中必須已經存在對應的記錄。

選擇級聯刪除相關的字段時,刪除表a中的一條記錄,就會刪除對應的表b中的一條記錄。

資料庫表 多對多的關係怎麼建啊?

7樓:匿名使用者

a表,a_id,a_name,a_tel三個字段。

b表,b_id,b_address,b_sol三個字段。

關聯表,ref_id,a_id,b_id,儲存著ab兩表的id,比如:a有

a0001,zhang3,139555533a0002,li4,1397788888

a0003,wang5,13655566

b有 b0001,shanghai,234b0002,shenyang,332

b0003,chongqing,123

如果想要ab表多對多的話,只需要將關聯表進行增加即可,而ab兩表基本資料不變,

比如:關聯表ref_table:

r0001,a0001,b0002

r0002,a0001,b0001

r0003,a0001,b0003

r0004,a0002,b0003

通過聯合查詢,就可以得到多對多的資料了,而且不破壞基本資料表。

資料庫如何建立表間一對多關係

如何新建資料庫關係圖

8樓:糖糖寳寳

1.選擇表--->某一列--->修改

2.右鍵單擊--- >關係

3.新增--->表和列規範-->選擇表和列4.新建資料庫關係圖

5.只需要按住主鍵 並拖動 到它外來鍵上,就會看到乙個指定關係的對話方塊

9樓:匿名使用者

紅框:在create table 的時候使用外來鍵約束。

不論你建立一對

一、一對多、多對多的關係,關係的兩端都是連線一張表,這方面你可以了解一下e-r圖!

如何設定sql資料庫表與表的關聯關係?

10樓:匿名使用者

sql server management studio

所要設定的表下面的選項,可以新建外來鍵約束、一些約束行為來進行表與表直接的關聯。而且你也可以建立檢視來看表之間的關係 這樣直觀,簡單。

也可以用sql語句。

11樓:匿名使用者

如果是 父子關係, 或者 一對多 關係。

可以通過 建立外來鍵的方式, 在 父表 與 子表之間, 建立乙個關聯關係。

例如:-- 建立測試主表. id 是主鍵.

create table test_main (

id int not null,

value varchar(10),

primary key(id)

);-- 建立測試子表.

create table test_sub (

id int not null,

main_id int ,

value varchar(10),

primary key(id)

);-- 插入測試主表資料.

insert into test_main(id, value) values (1, 'one');

insert into test_main(id, value) values (2, 'two');

-- 插入測試子表資料.

insert into test_sub(id, main_id, value) values (1, 1, 'oneone');

insert into test_sub(id, main_id, value) values (2, 2, 'twotwo');

sql> -- 建立外來鍵(預設選項)

sql> alter table test_sub add constraint main_id_cons foreign key (main_id) references test_main;

table altered.

sql>

sql> -- 測試刪除主表資料. 將出錯 ora-02292: 違反完整約束條件

sql> delete

2 test_main

3 where

4 id = 1;

delete

*error at line 1:

ora-02292: integrity constraint (hr.main_id_cons) violated - child record found

12樓:雲天英雄

在對應的庫下建立對應的表即可

在oracle資料庫中,如何建立表與表之間的關係?

13樓:匿名使用者

就是在表與表之間建立起鏈結就行了,這個鏈結就叫做外來鍵—fc;列入:create table stu(stuid int,sname varchar2(20));

create table score(stid int,cid int);

alter table stu add constraint pk_stuid primary key(stuid);

alter table score add constraint fk_stuid foreign key(stid) references stu(stuid); stuid這個屬性就是foreign key就是外來鍵;他就是鏈結stu表和score表的橋梁。

怎樣用postgresql建表,建資料庫

postgresql的create table語句是用來在任何指定的的資料庫中建立乙個新錶。yiibai.com 語法create table語句的基本語法如下 create table table name column1 datatype,column2 datatype,column3 dat...

資料庫建表時表最多可以有幾個主鍵,幾個外來鍵

乙個表最多只能有乙個主鍵,但外來鍵可以有若干個。主鍵不一定是單個字段,也可以是多個字段組成的聯合主鍵。主鍵在乙個表中只有乙個,但主鍵有兩種,單一的和復合的,想設復合主鍵要先建立約束,外來鍵可以有多個.補充 澄江秋色 的 主鍵只有乙個 但是可以設定為多個字段為主鍵,也即復合主鍵。外來鍵就隨便你自己設定...

資料庫sql語句四表連線,資料庫SQL語句 四表連線

1 如圖所示,開啟了sql server 2008,並建立好了資料庫。然後看當前是否是在自己要建立表的資料庫中。2 如圖,選中好lx資料庫,練習資料庫。3 或者在新建視窗中輸入 use lx,然後選中後執行它,一樣進入到lx資料庫中。如圖所示。4 之前有教過不用 設計資料庫的表,這裡只講用語句建立表...

sql怎麼把資料庫中的表移到另資料庫中

結構一樣的話 insert into 資料庫a.dbo.tablea select from 資料庫b.dbo.tablea 另外 nsert into ddd 欄位1,欄位2,欄位3 select 欄位1,欄位2,欄位3 from aaa,bbb,ccc 插入的字段和查詢的字段數量型別一致 由於你...

C怎麼建立資料庫,用c 如何建立資料庫表?? 急

要用sql server這個軟來做的 用c 如何建立資料庫表?急 第一.sql server 2000建立資料庫表.很簡單.開啟企業管理器.樹狀結構圖開啟至資料庫資料夾.右鍵新建資料庫.資料庫名字自己取.選擇資料檔案和事務日誌的放置地點.最好和自己做的東西放在乙個資料夾下.ok.資料庫建立成功.進入...