sql資料庫建外來鍵出錯的幾個原因

時間 2022-04-13 18:50:02

1樓:匿名使用者

name) 而在dept表中d_name卻不是主鍵或者候選鍵 也就是說你僅僅將dept的d_name設定為非空 卻不能保證它的唯一的的。

另外,虛機團上產品**,超級便宜

sql sever中建立外來鍵時出現這個情況 250

2樓:上官三雲

1、要建立外來鍵關係,首先要保證用來建立外來鍵關係的列具有唯一性,即具有 unique 約束,通常是某表的主鍵作為另外一個表的外來鍵;

2、開啟資料庫表,找到要建立外來鍵的表。並確保其中要建立外來鍵關係的列與主鍵表中的資料型別完全一致;

3、在要建立外來鍵關係的表中,在任意列上右擊,選擇【關係】;

4、在外來鍵關係對話方塊中,點選左下角的【新增】;

5、點選【表和列規範】項的右側的 ...小按鈕;

6、在表和列對話方塊中,在主鍵表下方選擇外來鍵列所在的表和該外來鍵列;

7、在外來鍵表下方,只要選擇表中與主鍵表的列相對應的列即可;

8、然後點選【確定】,再回到外來鍵關係表;

9、如果還有外來鍵關係需要建立,繼續點選外來鍵關係表左下側的【新增】,沒有的話,點選【關閉】即可;

10、此時,已經成功建立了一個主外來鍵關係。在表中任意列右擊,選擇關係就可以看到啦。

3樓:白考慮考慮

啦咯啦咯啦咯考慮圖咯

sql資料庫無法建立外來鍵的問題

4樓:匿名使用者

設立外來鍵是關聯的另一個表的鍵必須是主鍵create table lanmuinfo

(lan_id varchar(20) not null primary key,

lanname nchar(10)

)create table newsinfo(news_id int not null primary key,lanname nchar(10) foreign key references lanmuinfo(lan_id),//如果一定要用lanname,那就把lanname也設為主鍵

title nchar(10))

5樓:匿名使用者

create table lanmuinfo(lan_id int not null primary key,lanname nchar(10)

)gocreate table newsinfo(news_id int not null primary key,lanname nchar(10) foreign key references lanmuinfo(lanname),

title nchar(10))

6樓:匿名使用者

把這句lanname nchar(10) constraint fk_newsinfo_lanmuinfo foreign key references lanmuinfo(lanname),改成lanname nchar(10) constraint fk_newsinfo_lanmuinfo foreign key references lanmuinfo(lan_id), 試試

為什麼我在新增資料庫(sql server)外來鍵的時候會出現錯誤。兩個表裡面的欄位型別是形同的都是varchar(10)

7樓:

主表上必須建立主鍵約束或者unique約束。

8樓:匿名使用者

首先, 先確定你的語法有沒有問題.

sql server 外來鍵約束的例子

然後, 檢查你的資料有沒有問題.

例如: 主表 的 主鍵 是, 1,2,3。

但是子表外來鍵 是 1,2,3,4 的情況下。

外來鍵建立就要抱錯了。

9樓:匿名使用者

樓主急需的話,可以將表發到我的郵箱[email protected]

10樓:匿名使用者

是不是你違反了什麼約束了

11樓:爾玉

有可能是你一不小心弄錯主鍵和外來鍵了吧,再檢查檢檢視看。。。。。

sql語句 下面為什麼不能建兩個外來鍵呢????

12樓:瀋陽

你兩個外來鍵之間要用逗號啊。

create table

(name char(10)not null,websiteid int null,

cateid int null,

newupdate int not null,constraint fk_fenleihaoforeign key(websiteid ) references t_website(id), --缺少逗號在這新增逗號

constraint fk_fenlei

foreign key(cateid) references t_category(id))

13樓:落葉有期

create table t_a

(name char(10) not null,websiteid int null,

cateid int null,

newupdate int not null,foreign key(websiteid) references t_website(id),

foreign key(cateid) references t_category(id)

) 另外在查詢分析器裡執行sql語句前最好分析一下,不要直接執行

14樓:匿名使用者

第一行沒有給出表的名字;第8行最後少了一個逗號create table ttt

(name char(10)not null,websiteid int null,

cateid int null,

newupdate int not null,constraint fk_fenleihaoforeign key(websiteid ) references t_website(id),

constraint fk_fenlei

foreign key(cateid) references t_category(id))

sql server中資料庫建立外來鍵遇到的問題?

15樓:老師小喬

create table a(id int)create table b(id int,userid int)alter table b add constraint fk_job_id foreign key (userid) references a(id)

這是我的舉例,對比一下看看和你寫的有什麼不一樣。

我在sql server 2008中建立表時,如果建立外來鍵的話會出錯,為什麼啊?希望您能幫助我!

16樓:erp小

create table userinfo(userid int identity(1,1) primary key, --遞增主鍵

useraccounts varchar(20),username varchar(20),userpwd varchar(10))

create table news(

newsid int identity(1,1) primarykey,

userid int,

newstitle varchar( 50 ),newsrelease varchar( 200 ),newsreleasetime datetime,foreign key (userid) references userinfo(userid)) --外來鍵約束

你看下這個,就知道**有問題了。

17樓:匿名使用者

constraint 約束名稱(外來鍵約束通常為pk_***)foreign key(cpon) references 被參照表名字(被參照欄位)

sql資料庫兩個外來鍵做聯合主鍵

聯合主鍵是有著特殊的需求的。建表的時候建立 create table 表名 欄位名1 int not null,欄位名2 nvarchar 13 not null primary key 欄位名1,欄位名2 欄位名3 欄位名n 或者建表之後修改表結構 alter table 表名 with noch...

C 連線資料庫出錯,C 與sql資料庫連線問題

vs2005 伺服器資源管理器 右鍵 資料連線 新增連線 伺服器名輸入 local 下面選擇登入方式 選擇連線資料庫 確定。右鍵你新建好的連線 屬性 右邊 連線字串 複製就可以了 檢查你的連線字串是否正確,教你一個辦法,在vs中,拖一個可以繫結資料庫的控制元件,然後根據它的嚮導提示,會自動生成正確的...

SQL 2019附加資料庫出錯,SQL 2008附加資料庫出錯

原來是在sql server 2005中可正常附加的mdf檔案,現在放到win7下的sql 許可權問題,選擇 屬性 選單 你的作業系統和新裝的sql server 2008和原來的是一樣的不?我是指是不是都是32位或者都是64位的?還有就是是企業版還是標準版 661是sql2008 r2的版本號 把...