怎么添加主鍵mysql 什么是主鍵?如何設(shè)置?

mysql添加主鍵約束

主鍵約束:唯一,不重復(fù),不能為空? primary key

創(chuàng)新互聯(lián)是一家專業(yè)提供丹江口企業(yè)網(wǎng)站建設(shè),專注與成都網(wǎng)站制作、網(wǎng)站建設(shè)、H5建站、小程序制作等業(yè)務(wù)。10年已為丹江口眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)網(wǎng)絡(luò)公司優(yōu)惠進(jìn)行中。

一個表中有且只有一個主鍵約束

1.創(chuàng)建表的同時創(chuàng)建主鍵約束

格式一:

create table 表名(

列名1? 數(shù)據(jù)類型 primary key,

列名2 數(shù)據(jù)類型

);

主鍵約束名字的寫法: PK_列名

格式二:

create table 表名(

列名1 數(shù)據(jù)類型,

列名2 數(shù)據(jù)類型,

constraint? 主鍵約束的名字? primary key(列名1)

);

格式三:

create table 表名(

列名1 數(shù)據(jù)類型,

列名2 數(shù)據(jù)類型,

primary key(列名1)

);

2.針對已經(jīng)存在的表,添加主鍵約束

格式一:

alter table 表名 modify 列名 數(shù)據(jù)類型 primary key;

格式二:

alter table 表名 add primary key(列名);

格式三:

alter table 表名 add constraint 主鍵約束的名字 primary key(列名);

3.刪除主鍵約束

格式:alter table 表名 drop primary key;

mysql 中如何給已存在的表中字段增設(shè)置主鍵?

1、打開navicat工具,連接上mysql服務(wù)器,選擇完數(shù)據(jù)庫之后,選擇一個表右擊選擇設(shè)計表(這里為了演示測試,隨便選擇一個表即可)。

2、在設(shè)計表頁面,可以看到當(dāng)前表的所有字段信息,我們選擇的學(xué)生表有一個id字段,目前該表沒有主鍵字段。

3、如圖,在最后一列右擊選擇主鍵,即可將該字段設(shè)置為主鍵,也可以直接點擊鼠標(biāo)左鍵,可以快速添加和取消主鍵。

4、設(shè)置完主鍵之后,可以看到一把鎖的標(biāo)志,并且有一個1字,因為一個表可以給多個字段添加主鍵,則為聯(lián)合主鍵,這樣就顯示為主鍵1,主鍵2等。

5、主鍵設(shè)置完成之后,還沒有自增,選擇id字段之后,在下方,如圖,勾選自動遞增,這樣id在每次插入記錄之后都會自增一個值。

6、設(shè)置完成主鍵和自增之后,點擊保存,關(guān)閉當(dāng)前窗口,然后選擇表名右擊選擇對象信息。

7、在DLL頁面中,可以看到剛剛添加的主鍵和自增的DLL語句,這里就是創(chuàng)建表的DLL語句。

8、上面有提到聯(lián)合主鍵,其實一個表可以給多個字段設(shè)置主鍵,這樣可以組成聯(lián)合主鍵,對于特定的業(yè)務(wù),聯(lián)合主鍵也是必須的。

mysql怎么在一個表里面創(chuàng)建主鍵

1.主鍵語法

①創(chuàng)建時:create table sc (

studentno int,

courseid int,

score int,

primary key (studentno) );

②修改時:ALTER TABLE table_name ADD CONSTRAINT pk_name PRIMARY KEY(列名);

前提是原先沒有設(shè)置主鍵。

2.外鍵語法

①創(chuàng)建時:create table sc (

studentno int,

courseid int,

score int,

foreign key (courseid) );

②修改時:

ALTER TABLE news_info[子表名] ADD CONSTRAINT FK_news_info_news_type[約束名] FOREIGN KEY (info_id)[子表列] REFERENCES news_type[主表名] (id)[主表列] ;

3.使用組合主鍵

如果一列不能唯一區(qū)分一個表里的記錄時,可以考慮多個列組合起來達(dá)到區(qū)分表記錄的唯一性,形式

①創(chuàng)建時:create table sc (

studentno int,

courseid int,

score int,

primary key (studentno,courseid) );

②修改時:alter table tb_name add primary key (字段1,字段2,字段3);

前提是原來表中沒有設(shè)置主鍵,若原先已有主鍵則會報錯。

mysql設(shè)置主鍵的代碼是什么?

mysql設(shè)置主鍵的代碼是PRIMARY KEY (主鍵字段)。

如:CREATE TABLE Customer (SID integer,Last_Name varchar(30),F(xiàn)irst_Name varchar(30),PRIMARY KEY (SID))。

主關(guān)鍵字(主鍵,primary key)是被挑選出來,作表的行的唯一標(biāo)識的候選關(guān)鍵字。一個表只有一個主關(guān)鍵字。主關(guān)鍵字又可以稱為主鍵。

擴(kuò)展資料:

永遠(yuǎn)也不要更新主鍵。實際上,因為主鍵除了唯一地標(biāo)識一行之外,再沒有其他的用途了,所以也就沒有理由去對它更新。如果主鍵需要更新,則說明主鍵應(yīng)對用戶無意義的原則被違反了。

主鍵應(yīng)當(dāng)由計算機(jī)自動生成。如果由人來對主鍵的創(chuàng)建進(jìn)行干預(yù),就會使它帶有除了唯一標(biāo)識一行以外的意義。一旦越過這個界限,就可能產(chǎn)生人為修改主鍵的動機(jī),這樣,這種系統(tǒng)用來鏈接記錄行、管理記錄行的關(guān)鍵手段就會落入不了解數(shù)據(jù)庫設(shè)計的人的手中。

在MySQL中如何設(shè)置主鍵和外鍵

1.外鍵的作用,主要有兩個:

一個是讓數(shù)據(jù)庫自己通過外鍵來保證數(shù)據(jù)的完整性和一致性

一個就是能夠增加ER圖的可讀性

2.外鍵的配置

1)先創(chuàng)建一個主表,代碼如下:

#創(chuàng)建表student,并添加各種約束

create table student

(

id int primary key , #主鍵約束

name varchar(20) , #唯一約束

age int NOT NULL, #非空約束

sex varchar(2) ,

address varchar(20) default '重慶' #默認(rèn)約束

) ;

再通過一個外鍵,創(chuàng)建一個分?jǐn)?shù)表,這樣的話,就可以方便查詢。代碼如下:

#創(chuàng)建分?jǐn)?shù)表

create table score

(

id int primary key ,

sid int ,

china int ,

history int,

english int,

constraint FK_sid foreign key(sid) references student(id) #通過外鍵創(chuàng)建鏈接

) ;

創(chuàng)建外鍵的方法有很多,其中最常見創(chuàng)建外鍵的格式是:constraint FK_*** foreign key(**) references 鏈接的外表

刪除外鍵:

alter table drop foreign key '外鍵名'.

注意:

只有在定義外鍵時,用constraint 外鍵名 foreign key .... 方便進(jìn)行外鍵的刪除

主鍵是唯一標(biāo)示這一行的,就好像你的身份證號一樣,每個人只有一個,也是唯一能證明你是你的東西。外鍵是別人執(zhí)行你的東西。也就是說如果一個人想和你有點關(guān)系怎么辦,那就要關(guān)聯(lián)起來,怎么關(guān)聯(lián)起來,就通過外鍵啊

定義主鍵和外鍵主要是為了維護(hù)關(guān)系數(shù)據(jù)庫的完整性,總結(jié)一下:

一、主鍵是能確定一條記錄的唯一標(biāo)識,比如,一條記錄包括身份正號,姓名,年齡。身份證號是唯一能確定你這個人的,其他都可能有重復(fù),所以,身份證號是主鍵。

外鍵用于與另一張表的關(guān)聯(lián)。是能確定另一張表記錄的字段,用于保持?jǐn)?shù)據(jù)的一致性。比如,A表中的一個字段,是B表的主鍵,那他就可以是A表的外鍵。

網(wǎng)站名稱:怎么添加主鍵mysql 什么是主鍵?如何設(shè)置?
網(wǎng)站URL:http://www.muchs.cn/article34/hggcpe.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供外貿(mào)網(wǎng)站建設(shè)微信公眾號企業(yè)建站、網(wǎng)站設(shè)計網(wǎng)站改版App開發(fā)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

小程序開發(fā)