亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

sqlserver設(shè)置主鍵的實(shí)現(xiàn)步驟

 更新時(shí)間:2023年10月18日 15:48:02   作者:zgscwxd  
在SQLServer中,定義表的主鍵非常容易,本文主要介紹了sqlserver設(shè)置主鍵的實(shí)現(xiàn)步驟,具有一定的參考價(jià)值,感興趣的可以了解一下

開始之前

限制和局限

  • 一個(gè)表只能包含一個(gè) PRIMARY KEY 約束。

  • 在 PRIMARY KEY 約束中定義的所有列都必須定義為 NOT NULL。 如果沒有指定為 Null 性,則加入 PRIMARY KEY 約束的所有列的為 Null 性都將設(shè)置為 NOT NULL。

創(chuàng)建主鍵會(huì)自動(dòng)創(chuàng)建相應(yīng)的唯一群集索引、聚集索引或非聚集索引(如果這樣指定)

若要重新定義主鍵,則必須首先刪除與現(xiàn)有主鍵之間的任何關(guān)系,然后才能創(chuàng)建新主鍵。 此時(shí),將顯示一條消息警告您:作為該過程的一部分,將自動(dòng)刪除現(xiàn)有關(guān)系。

如果主鍵由多個(gè)列組成,則其中一個(gè)列將允許重復(fù)值,但是主鍵中所有列的值的各種組合必須是唯一的。

在SQL Server中,主鍵是數(shù)據(jù)表中唯一標(biāo)識(shí)每一行記錄的列,如果一個(gè)表沒有主鍵,表中的記錄將不能被區(qū)分開。此外,主鍵還有助于提高查詢性能,使用主鍵加快了表中記錄的訪問速度,因此,在使用SQL Server進(jìn)行數(shù)據(jù)庫(kù)設(shè)計(jì)時(shí),主鍵的設(shè)計(jì)就顯得尤為重要。

首先,在數(shù)據(jù)庫(kù)中創(chuàng)建好數(shù)據(jù)表后,可以使用以下T-SQL代碼語(yǔ)句

1. 使用 T-SQL 命令,執(zhí)行完命令后,主鍵就會(huì)被成功設(shè)置

ALTER TABLE 表名
ADD CONSTRAINT PK_主鍵名稱 PRIMARY KEY (列名)

--其中,表名是要設(shè)置主鍵的表名,主鍵名稱是主鍵約束的名稱(可以自己定義),列名是要設(shè)置為主鍵的列名

ALTER TABLE sys_menu
ADD CONSTRAINT PK_menu_id PRIMARY KEY (menu_id)



ALTER TABLE student
ADD CONSTRAINT PK_student PRIMARY KEY (StuID) --將表中的StuID設(shè)為主鍵


ALTER TABLE student
DROP CONSTRAINT PK_student			  --將表中的主鍵約束PK_studnet刪除





除此之外,在SQL Server中,還可以使用下列代碼定義表的主鍵

CREATE TABLE table_name

(

column_name datatype PRIMARY KEY

)

CREATE TABLE student                                           --表名為student
(
	  StuID int NOT NULL PRIMARY KEY,                           --學(xué)生學(xué)號(hào)
	  StuName varchar(15) NOT NULL,                             --學(xué)生姓名
	  Sex char(2) NULL,                                         --性別
	  Major varchar(20) NULL,                                   --所選專業(yè)
)


primary key(列名1,列名2)

此外,在SQL Server中,還可以使用如下代碼定義聯(lián)合主鍵,也就是具有多個(gè)字段的主鍵。例如,要同時(shí)定義列customer_id和 order_id兩個(gè)字段為一個(gè)聯(lián)合主鍵,可以使用以下T-SQL代碼

CREATE TABLE orders

(

customer_id INT,

order_id INT,

PRIMARY KEY(customer_id, order_id)

)

alter table 表名 add constraint pk_name primary key (列名1,列名2)

因此,在SQL Server中,定義表的主鍵非常容易,無論是單一主鍵還是聯(lián)合主鍵,只需要幾行代碼,就可以完成定義。

設(shè)置主鍵并置為非空

 要先確定你要設(shè)置主鍵的的那列不為空,如果你的列為空,以下代碼可以幫助你設(shè)為空并且添加主鍵

/*Table_Member是數(shù)據(jù)表的名字,StudentID 是要設(shè)為主鍵的列,bigint 是主鍵列的數(shù)據(jù)類型*/
ALTER TABLE Table_Member ALTER COLUMN StudentID bigint NOT NULL;
 
/*Table_Member是數(shù)據(jù)表的名字,StudentID 是要設(shè)為主鍵的列*/
ALTER TABLE Table_Member WITH NOCHECK
ADD CONSTRAINT PK_Table_Member PRIMARY KEY (StudentID)

更改已經(jīng)建好的表中主鍵列的字符類型

同樣的,這個(gè)操作也要分為兩步,在SQL server 的設(shè)計(jì)理念中,主鍵列不可更改數(shù)據(jù)類型,如果要將不是主鍵的列更改字符類型,直接跳到第二步。

ALTER TABLE [表名] DROP CONSTRAINT [主鍵約束名]

ALTER TABLE [表名] ALTER COLUMN [列名] [數(shù)據(jù)類型]

到此這篇關(guān)于sqlserver設(shè)置主鍵的實(shí)現(xiàn)步驟的文章就介紹到這了,更多相關(guān)sqlserver設(shè)置主鍵內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家! 

相關(guān)文章

  • 去掉前面的0的sql語(yǔ)句(前導(dǎo)零,零前綴)

    去掉前面的0的sql語(yǔ)句(前導(dǎo)零,零前綴)

    一個(gè)列的格式是單引號(hào)后面跟著4位的數(shù)字,比如’0003,’0120,’4333,我要轉(zhuǎn)換成3,120,4333這樣的格式,就是去掉單引號(hào)和前導(dǎo)的0,用以下語(yǔ)句就可以。
    2011-08-08
  • SQL?Server附加數(shù)據(jù)庫(kù)時(shí)出現(xiàn)錯(cuò)誤的處理方法

    SQL?Server附加數(shù)據(jù)庫(kù)時(shí)出現(xiàn)錯(cuò)誤的處理方法

    通過附加功能添加現(xiàn)成的數(shù)據(jù)庫(kù)是非常方便的,然而有時(shí)會(huì)出現(xiàn)附加數(shù)據(jù)庫(kù)失敗,下面這篇文章主要給大家介紹了關(guān)于SQL?Server附加數(shù)據(jù)庫(kù)時(shí)出現(xiàn)錯(cuò)誤的處理方法,需要的朋友可以參考下
    2022-12-12
  • SQL中創(chuàng)建存儲(chǔ)過程

    SQL中創(chuàng)建存儲(chǔ)過程

    這篇文章主要介紹了SQL中創(chuàng)建存儲(chǔ)過程,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-11-11
  • sqlserver數(shù)據(jù)庫(kù)高版本備份還原為低版本的方法

    sqlserver數(shù)據(jù)庫(kù)高版本備份還原為低版本的方法

    這篇文章主要為大家詳細(xì)介紹了sqlserver數(shù)據(jù)庫(kù)高版本備份還原為低版本的方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-11-11
  • sql server 編譯與重編譯詳解

    sql server 編譯與重編譯詳解

    這篇文章主要介紹了sql server 編譯與重編譯詳解的相關(guān)資料,需要的朋友可以參考下
    2016-09-09
  • SQL Server異常代碼處理的深入講解

    SQL Server異常代碼處理的深入講解

    這篇文章主要給大家介紹了關(guān)于SQL Server異常代碼處理的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-08-08
  • 使用 SQL 語(yǔ)句實(shí)現(xiàn)一個(gè)年會(huì)抽獎(jiǎng)程序的代碼

    使用 SQL 語(yǔ)句實(shí)現(xiàn)一個(gè)年會(huì)抽獎(jiǎng)程序的代碼

    這篇文章主要介紹了使用 SQL 語(yǔ)句實(shí)現(xiàn)一個(gè)年會(huì)抽獎(jiǎng)程序,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-02-02
  • VS2015安裝之后加裝Sql server2014詳細(xì)步驟

    VS2015安裝之后加裝Sql server2014詳細(xì)步驟

    這篇文章主要介紹了VS2015安裝之后加裝SQL SERVER2014詳細(xì)步驟,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-12-12
  • SQLServer2000 報(bào)1053錯(cuò)誤(服務(wù)沒有及時(shí)響應(yīng)或控制請(qǐng)求)的解決方法

    SQLServer2000 報(bào)1053錯(cuò)誤(服務(wù)沒有及時(shí)響應(yīng)或控制請(qǐng)求)的解決方法

    發(fā)生錯(cuò)誤 1053-(服務(wù)沒有及時(shí)響應(yīng)或控制請(qǐng)求。),此時(shí)正在 MSSQLServer 服務(wù)上執(zhí)行該服務(wù)操作。我立即上網(wǎng)查找相關(guān)信息,看見有人說是更改windows用戶密碼后便出現(xiàn)此類問題,但說得都不是很明白,所以自己想總結(jié)一下
    2013-06-06
  • MSSQL2000安全設(shè)置圖文教程

    MSSQL2000安全設(shè)置圖文教程

    Sql server 2000下建立獨(dú)立帳號(hào)數(shù)據(jù)庫(kù)方法來實(shí)現(xiàn)安全設(shè)置,目的是為了就是黑客得到mssql的sa密碼,也只是低級(jí)的權(quán)限,不能進(jìn)行超級(jí)管理員才有的權(quán)限。
    2011-01-01

最新評(píng)論