資料庫表設計中,欄位關聯兩個表,可以嗎?這樣關聯有什麼意義嗎

時間 2021-10-14 22:23:54

1樓:

用left join 加case when 吧select case when b.column2 is not null when b.column2 else c.

column2 end

from 附件表 a left join

複核表 b on a.column1=b.column1 left join

稽核表 c on a.column1=c.column1大致思路是這樣。看是否還有其它疑問

2樓:匿名使用者

可以關聯兩個表,或更多表。

關聯可以減少資料的重複儲存,保證資料的正確性。

保證資料的正確(完整性)是很重要的。

關聯可以防止更新資料時,破壞資料的完整性。

比如當**表和銷售表不關聯到商品表時,

商品名稱變更時需要修改三張表,如果一時疏忽可能遺漏某個表的更新處理。

3樓:匿名使用者

一個欄位關聯兩個表

如果你這個欄位是主表的一個欄位, 關聯的是兩個字表,那麼完全是沒有問題的。

例如一個員工表、一個 考勤表、一個 工資表員工表的 員工id欄位 關聯兩個表 (考勤表、工資表)

4樓:

可以,這是關係性資料庫的表示方法,其意義在於減少重複資料的儲存。

5樓:匿名使用者

肯定是可以的,外關聯就可以

資料庫表設計中,一個欄位關聯兩個表,可以嗎?這樣關聯有什麼意義嗎?

6樓:一顆程式猿

可以, 但是通常這種情況可以將兩表分離, 或者這三個表都是以這個欄位關聯了相同的一個表

當然, 如果這個欄位是主鍵的話, 那很合理

請問sql資料庫中有一個表中的兩個欄位,同時關聯另一個表中的同一個欄位,要使它級聯刪除應該怎麼做?

7樓:匿名使用者

sql的外來鍵約束可以實現級聯刪除與級聯更新;

oracle則只充許級聯刪除。

sql級聯刪除與級聯更新使用格式:

create table a001(id int primary key,name varchar(20))

create table a002(id int references a001(id)on delete cascade on update cascade,age tinyint)

oracle級聯刪除使用格式:

create table a001(id int primay key,name varchar2(20))

create table a002(id int references a001(id)on delete cascade,age number(2,0))

8樓:匿名使用者

foreign key   (column[,...n])references referenced_table_name[(ref_column[,...n])]

[on delete cascade]

關鍵是cascade。

sql server,一張表中,有多個欄位關聯另一張表,怎麼寫sql語句?

9樓:匿名使用者

對於這個問題,無論語句怎麼寫,其實執行起來資料庫內部還是要用join操作來進行處理的,所以你用join就可以,優化的話可以再user表的id屬性上加索引(如果是主鍵預設是有索引的)

10樓:匿名使用者

原理的確是來

你那源個思路。bai但可以通du過下面zhi方式來簡化寫法

daoselect

auserid,auserdes = (select userdes from user b where a.auserid = b.user),

buserid,buserdes = (select userdes from user b where a.bauserid = b.user),

cuserid,cuserdes = (select userdes from user b where a.causerid = b.user),

from userlist a

oracle資料庫表增加欄位,oracle資料庫中怎樣對多個表增加欄位

會,比如 說增加了欄位,你 insert into table values 這樣就出錯了,因為你是全欄位插入。但是其實你沒有values。alter table table name add column name column type column name column type 問題很嚴重...

設計表時,ID欄位在資料庫中設定為自增好嗎?能詳細說明原因嗎

設計表時對於唯一標識欄位根據資料表的增長情況可以選擇是自增還是newid sqlserver 自增整型欄位對於表資料行很大的情況下不建議用,因為總會有數值不夠用的時候 但自增欄位有個好處,對於流水記錄可以很方便記錄順序記錄 另外時間戳也是個不錯的選擇 另外選擇newid sqlserver 即gui...

資料庫的兩個表通過主鍵和外來鍵相關聯如果修改其中表的資料會不會自動修改另表的資料啊

現有倆表a,b,a表有主鍵,b表建立外來鍵關聯到a表修改a表,若修改之後的結果是b表外來鍵欄位的值在a表中找不到了,則會報錯,不允許進行此修改,其他情況可以任意修改。修改b表,必須保證修改後b表外來鍵欄位的值依然能在a表中找到,否則會報錯。倆表自己的修改,只會影響自己表的資料,對其他表無影響。 灝忓...