




已閱讀5頁,還剩63頁未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1,結(jié)構(gòu)化查詢語言SQL,主要內(nèi)容 SQL概述 SQL的數(shù)據(jù)定義 SQL的數(shù)據(jù)查詢 數(shù)據(jù)更新 嵌入式SQL Transact SQL語言概述,2,本章概述,結(jié)構(gòu)化查詢語言SQL(Structured Query Language)是關(guān)系數(shù)據(jù)庫 的標(biāo)準(zhǔn)語言,對(duì)關(guān)系模型的發(fā)展和商用DBMS的研制起著重要的作用。SQL語 言是介乎于關(guān)系代數(shù)和元組演算之間的一種語言。接下來介紹SQL的核心 部分內(nèi)容:數(shù)據(jù)定義、數(shù)據(jù)查詢、數(shù)據(jù)更新和嵌入式SQL。,3,SQL概述,主要內(nèi)容 SQL的產(chǎn)生與發(fā)展 SQL的組成及特點(diǎn),4,SQL的產(chǎn)生與發(fā)展,1972年,IBM公司開始研制實(shí)驗(yàn)型關(guān)系數(shù)據(jù)庫管理系統(tǒng)SYSTEM R,其配備的查詢語言稱為SQUARE (Specifying Queries As Relational Expression )語言,語言中使用了較多的數(shù)學(xué)符號(hào)。 1974年,Boyce和Chamberlin把SQUARE修改為SEQUEL (Structured English Query Language )語言。后來SEQUEL簡(jiǎn)稱為SQL (Structured Query Language ),即“結(jié)構(gòu)式查詢語言”,SQL的發(fā)音仍“sequel”?,F(xiàn)在SQL已經(jīng)成為一個(gè)標(biāo)準(zhǔn) 。 SQL有兩個(gè)標(biāo)準(zhǔn):ANSI SQL和1992年通過的修改版本SQL-92(簡(jiǎn)稱 SQL2)。還有一個(gè)新的標(biāo)準(zhǔn)SQL3,它擴(kuò)充了SQL2,引入了遞歸、觸發(fā) 器和對(duì)象等概念和機(jī)制。,5,SQL的組成及特點(diǎn),SQL語言從功能上可以分為四部分:數(shù)據(jù)查詢(Data Query)、數(shù)據(jù)操縱(Data Manipulation)、數(shù)據(jù)定義(Data Definition)和數(shù)據(jù)控制(Data Control)。 數(shù)據(jù)定義語言,即SQL DDL,用于定義SQL模式、基本表、視圖、索引等結(jié)構(gòu)。 數(shù)據(jù)操縱語言,即SQL DML。數(shù)據(jù)操縱分成數(shù)據(jù)查詢和數(shù)據(jù)更新兩類。其中數(shù)據(jù)更新又分成插入、刪除和修改三種操作。 數(shù)據(jù)控制語言,即SQL DCL,這一部分包括對(duì)基本表和視圖的授權(quán)、完整性規(guī)則的描述、事務(wù)控制等內(nèi)容。 SQL的核心部分相當(dāng)于關(guān)系代數(shù),同時(shí)又具有關(guān)系代數(shù)所沒有的許多特點(diǎn),如聚集、數(shù)據(jù)庫更新等。,6,特點(diǎn): 綜合統(tǒng)一 高度非過程化 SQL是一種第四代語言(4GL),用戶只需提出“干什么”,無需具體指明“怎么干”,像存取路徑選擇和具體處理操作等,均有系統(tǒng)自動(dòng)完成。 統(tǒng)一的語法結(jié)構(gòu) SQL有兩種使用方式:一是聯(lián)機(jī)交互使用,另一種是嵌入到某種高級(jí)語言程序設(shè)計(jì)語言中去使用。 語言簡(jiǎn)潔,SQL語言的基本組成,SQL語言支持關(guān)系數(shù)據(jù)庫的三級(jí)模式結(jié)構(gòu),如下圖所示。,8,SQL的核心動(dòng)詞,9,SQL的數(shù)據(jù)定義,主要內(nèi)容 數(shù)據(jù)庫的創(chuàng)建與撤銷 定義、修改與刪除基本表 建立與刪除索引-稍后 創(chuàng)建與刪除視圖-稍后,10,SQL的數(shù)據(jù)定義功能包括數(shù)據(jù)庫定義、表定義、視圖和索引的定義。,11,學(xué)生表:S(SNO,SNAME,SEX,AGE,SDEPT) 課程表:C(CNO,CNAME,CPNO,CCREDIT) 學(xué)生選課表:SC(SNO,CNO,GRADE),學(xué)生表 實(shí)例,例1 定義一個(gè)教務(wù)管理數(shù)據(jù)庫JWGL,它包含3個(gè)表:,本章數(shù)據(jù)庫示例(教務(wù)管理數(shù)據(jù)庫),12,課程表實(shí)例,學(xué)生表選課表 實(shí)例,13,數(shù)據(jù)庫的創(chuàng)建與撤銷,數(shù)據(jù)庫的創(chuàng)建 在SQL2000中,一個(gè)數(shù)據(jù)庫模式被定義為基本表的集合。 對(duì)數(shù)據(jù)庫的創(chuàng)建可用CREATE語句實(shí)現(xiàn),其句法如下: CREATE DATABASE AUTHORIZATION 其中:AUTHORIZATION 是指該用戶獲得授予創(chuàng)建和使用數(shù)據(jù)庫的權(quán)限。 例如,下面語句定義了教務(wù)管理數(shù)據(jù)庫的模式: CREATE DATABASE JWGL AUTHORIZATION sa 創(chuàng)建的數(shù)據(jù)庫名為JWGL,擁有者為sa。,14,數(shù)據(jù)庫的撤消 當(dāng)一個(gè)數(shù)據(jù)庫及其所屬的基本表、視圖等元素都不需要時(shí),可以用DROP語句撤消這個(gè)數(shù)據(jù)庫。DROP語句的句法如下: DROP DATABASE CASCADE | RESTRICT 撤消的方式有以下兩種: CASCADE(連鎖式)方式:執(zhí)行DROP語句時(shí),把數(shù)據(jù)庫及其下屬的基本表、視圖、索引等所有元素全部撤消。 RESTRICT(約束式)方式:執(zhí)行DROP語句時(shí),只有當(dāng)數(shù)據(jù)庫中沒有任何下屬元素時(shí),才能撤消數(shù)據(jù)庫,否則拒絕執(zhí)行DROP語句。 例如,要撤消數(shù)據(jù)庫JWGL及其下屬所有的元素,可用下列語句實(shí)現(xiàn): DROP DATABASE JWGL CASCADE,15,定義、修改與刪除基本表,數(shù)據(jù)類型 一個(gè)屬性選用哪種數(shù)據(jù)類型要根據(jù)實(shí)際情況來決定,一般要從兩個(gè)方面來考慮,一是取值范圍,二是要做哪些運(yùn)算。,定義表 - 確定表的各個(gè)屬性 - 確定每個(gè)屬性域(取值范圍),16,定義基本表 定義基本表,就是創(chuàng)建基本表的結(jié)構(gòu)。其一般格式為: CREATE TABLE ( 列級(jí)完整性約束條件 , 列級(jí)完整性約束條件 ,); 建表的同時(shí)通常還可以定義與該表有關(guān)的完整性約束條件,這些完整性約束條件被存入系統(tǒng)的數(shù)據(jù)字典中,當(dāng)用戶操作表中數(shù)據(jù)時(shí)由RDBMS自動(dòng)檢查該操作是否違背這些完整性約束條件。,17,例2 建立一個(gè)“學(xué)生”表S CREATE TABLE S (SNO CHAR(9) PRIMARY KEY, /* 列級(jí)完整性約束條件,SNO 是主碼 */ SNAME CHAR(20) UNIQUE, /* SNAME取唯一值 */ SEX CHAR(1), AGE SMALLINT, SDEPT CHAR(20) ); 系統(tǒng)執(zhí)行上面的CREATE TABLE語句后,就在數(shù)據(jù)庫中建立一個(gè)新的空的“學(xué)生”表S,并將有關(guān)“學(xué)生”表的定義及有關(guān)約束條件存放在數(shù)據(jù)字典中。,18,例4 建立學(xué)生選課表SC CREATE TABLE SC (SNO CHAR(9), CNO CHAR(4), GRADE SMALLINT, PRIMARY KEY(SNO,CNO), /* 主碼由兩個(gè)屬性構(gòu)成,必須作 為表級(jí)完整性進(jìn)行定義 */ FOREIGN KEY(SNO) REFERENCES S(SNO), /* 表級(jí)完整性約束條件,SNO是外碼,被參照表是S */ FOREIGN KEY(CNO) REFERENCES C(CNO) /* 表級(jí)完整性約束條件,CNO是外碼,被參照表是C */ );,修改基本表 SQL語言用ALTER TABLE語句修改基本結(jié)構(gòu)表,其一般格式為: ALTER TABLE ADD 完整性約束 DROP ALTER COLUMN ; 其中是要修改的基本表。 ADD子句用于增加新列和新的完整性約束條件; DROP子句用于刪除指定的完整性約束條件; ALTER COLUMN 子句用于修改原有的列定義。包括修改列名和數(shù)據(jù)類型。 例5 向S表增加“入學(xué)時(shí)間”列,其數(shù)據(jù)類型為日期型。 ALTER TABLE S ADD S_ENTRANCE DATE; 不論基本表中原來是否已有數(shù)據(jù),新增加的列一律為空值。,20,例6 alter table s alter column age int; 例7 alter table c add unique(cname);,21,刪除屬性列 (1) 間接刪除 把表中要保留的列及其內(nèi)容復(fù)制到一個(gè)新表中 刪除原表 再將新表重命名為原表名 (2)直接刪除 例:ALTER TABLE Student Drop Scome ;,完整性約束條件*,一、完整性的概念 數(shù)據(jù)完整性是指存儲(chǔ)在數(shù)據(jù)庫中的數(shù)據(jù)正確無誤并且相關(guān)數(shù)據(jù)具有一致性。 引入數(shù)據(jù)完整性是為了在數(shù)據(jù)的添加、刪除、修改等操作中不出現(xiàn)數(shù)據(jù)的破壞或多個(gè)表數(shù)據(jù)不一致。,23,在SQL Server 中,根據(jù)數(shù)據(jù)完整措施所作用的數(shù)據(jù)庫對(duì)象和范圍不同,可以將數(shù)據(jù)完整性分為以下幾種: 1、實(shí)體完整性(主鍵、唯一性約束) 2、參照完整性(外鍵約束) 3、域完整性(check、默認(rèn)值約束) 4、用戶定義的完整性,24,二、完整性的類型,1)實(shí)體完整性 實(shí)體完整性:在表中不能存在完全相同的記錄,且每條記錄都要具有一個(gè)非空且不重復(fù)的主鍵值。 實(shí)現(xiàn)實(shí)體完整性的方法:設(shè)置主鍵、惟一約束、惟一索引 2)參照完整性 參照完整性:又稱為引用完整性。是指通過主鍵與外鍵相聯(lián)系的兩個(gè)表或兩個(gè)以上的表,相關(guān)字段的值要保持一致。 實(shí)現(xiàn)實(shí)體完整性的方法:外鍵約束,3)域完整性 域完整性:向表中添加的數(shù)據(jù)必須與數(shù)據(jù)類型、格式及有效的數(shù)據(jù)長(zhǎng)度相匹配。 實(shí)現(xiàn)域完整性的方法:CHECK約束、外鍵約束、默認(rèn)約束、非空定義、規(guī)則以及在建表時(shí)設(shè)置的數(shù)據(jù)類型 4)用戶定義的完整性 用戶定義的完整性:是根據(jù)具體的應(yīng)用領(lǐng)域所要遵循的約束條件由用戶自己定義的特定的規(guī)則。,26,三、約束的類型,約束:SQL Server提供的自動(dòng)強(qiáng)制數(shù)據(jù)完整性的一種方法。它通過定義列的取值規(guī)則來維護(hù)數(shù)據(jù)的完整性。當(dāng)完整性約束創(chuàng)建之后,它作為基本表定義的一部分,存入DD中。 列級(jí)完整性約束:是行定義的一部分,只能應(yīng)用在一列上; 表級(jí)完整性約束:它的定義獨(dú)立于列的定義,可應(yīng)用在一個(gè)基本表中的多列上。當(dāng)需要在一個(gè)基本表中的多列上建立約束條件時(shí),只能建立表級(jí)約束。 常用約束:NOT NULL、CHECK、UNIQUE、PRIMARY KEY、FOREIGN KEY、DEFAULT,27,1、主鍵(PRIMARY KEY)約束,主鍵約束:在表中定義一個(gè)主鍵來惟一標(biāo)識(shí)表中的每行記錄 每個(gè)表中只能有一個(gè)主鍵,主鍵可是一列,也可是多列;主鍵不能為空;主鍵值不能重復(fù) 不能定義TEXT或IMAGE數(shù)據(jù)類型的字段列為主鍵。,28,PRIMARY KEY約束可在列級(jí)或表級(jí)上進(jìn)行定義,但不允許同時(shí)在兩個(gè)級(jí)別上進(jìn)行定義。 創(chuàng)建方法: PRIMARY KEY約束直接寫在列名及其類型之后; 按照語法在相應(yīng)列名及類型后單獨(dú)列出: CONSTRAINT PRIMARY KEY 在CREATE TABLE語句列出基本表的所有列之后, PRIMARY KEY(,),29,SSMS創(chuàng)建主鍵的步驟,30,創(chuàng)建表時(shí)定義主鍵,例1:列級(jí)約束 CREATE TABLE Tb_Class ( ClassId char(8) PRIMARY KEY, ClassName varchar(30) NOT NULL, DeptId char(2) NOT NULL, ClassStuNumber int ) ;,31,例2: CREATE TABLE C ( cno char(6) constraint PK_cno primary key, cname char(20), ccredit smallint, cpno char(6) );,32,例3: CREATE TABLE Tb_Class ( ClassId char(8) NOT NULL, ClassName varchar(30) NOT NULL, DeptId char(2) NOT NULL, ClassStuNumber int , CONSTRAINT PK_ClassId PRIMARY KEY (ClassId) ) ;,33,向已有表中添加主鍵,先創(chuàng)建一個(gè)無主鍵的表 CREATE TABLE Tb_Class ( ClassId char(8) NOT NULL, ClassName varchar(30) NOT NULL, DeptId char(2) NOT NULL, ClassStuNumber int ) - 再給相應(yīng)的列( ClassId )添加主鍵約束 ALTER TABLE Tb_Class ADD CONSTRAINT PK_ClassId PRIMARY KEY (ClassId),34,刪除主鍵約束 ALTER TABLE Tb_Class DROP CONSTRAINT PK_ClassId PRIMARY KEY (ClassId),35,2、外鍵(Foreign Key)約束,外鍵:出于某種關(guān)聯(lián)的需要,當(dāng)一個(gè)表需要引用另一個(gè)表的主鍵作為自己的一個(gè)字段時(shí),稱這個(gè)引用來的字段為外鍵。 外鍵約束:定義了表之間的關(guān)系,主要用來維護(hù)兩個(gè)表之間的一致性。 當(dāng)主鍵更新或刪除時(shí),其它所有表中與這個(gè)主鍵關(guān)聯(lián)的外鍵也將被相應(yīng)的更新或刪除。 當(dāng)向外鍵所在的表插入或更新數(shù)據(jù)(外鍵字段)時(shí),如果與外鍵表相關(guān)聯(lián)的主鍵表的主鍵中無與插入或更新的外鍵有相同的值時(shí),系統(tǒng)會(huì)報(bào)錯(cuò)并拒絕插入或更新數(shù)據(jù)。,外鍵約束說明,SSMS設(shè)置外鍵約束,39,40,41,在創(chuàng)建表時(shí)定義外鍵約束,CREATE TABLE Tb_Dept ( DeptId char(2) PRIMARY KEY, DeptName varchar(16) NOT NULL ) - CREATE TABLE Tb_Student ( StuId char(10) PRIMARY KEY, StuName char(8) NOT NULL, DeptId char(2) NOT NULL, CONSTRAINT FK_DeptId FOREIGN KEY (DeptId) REFERENCES Tb_Dept (DeptId) ),42,上述創(chuàng)建外鍵約束的語句可以簡(jiǎn)化為如下形式: - CREATE TABLE Tb_Student ( StuId char(10) PRIMARY KEY, StuName char(8) NOT NULL, DeptId char(2) NOT NULL REFERENCES Tb_Dept ) - 從添加外鍵約束時(shí)只需添加REFERENCES關(guān)鍵字和被引用的表名。(需要注意的是,外鍵列和被引用表中的主鍵列應(yīng)該名稱相同,且具有相同的列數(shù)據(jù)類型)。,在創(chuàng)建表時(shí)定義外鍵約束,43,級(jí)聯(lián)更新、刪除,CREATE TABLE Tb_Student ( StuId char(10) PRIMARY KEY, StuName char(8) NOT NULL, DeptId char(2) NOT NULL REFERENCES Tb_Dept ON UPDATE CASCADE ON DELETE CASCADE ),44,CREATE TABLE Tb_Student ( StuId char(10) PRIMARY KEY, StuName char(8) NOT NULL, DeptId char(2) NOT NULL, CONSTRAINT FK_DeptId FOREIGN KEY (DeptId) REFERENCES Tb_Dept (DeptId) ON UPDATE CASCADE ON DELETE CASCADE ),45,添加和刪除外鍵約束,先創(chuàng)建一個(gè)無外鍵的表 CREATE TABLE Tb_Student ( StuId char(10) PRIMARY KEY, StuName char(8) NOT NULL, DeptId char(2) NOT NULL ) 再給相應(yīng)的列( DeptId )添加外鍵約束 ALTER TABLE Tb_Student ADD CONSTRAINT FK_DeptId FOREIGN KEY (DeptId) REFERENCES Tb_Dept (DeptId),46,刪除外鍵約束 ALTER TABLE Tb_Student DROP CONSTRAINT FK_DeptId,47,參照完整性(通過外鍵約束來實(shí)現(xiàn)),參照完整性是指兩個(gè)表的主關(guān)鍵字(PRIMARY KEY)和外關(guān)鍵字(FOREIGN KEY)的數(shù)據(jù)要對(duì)應(yīng)一致。它確保了有主關(guān)鍵字的表中對(duì)應(yīng)其它表的外關(guān)鍵字的行存在,即保證了表之間的數(shù)據(jù)的一致性,防止了數(shù)據(jù)丟失或無意義的數(shù)據(jù)在數(shù)據(jù)庫中擴(kuò)散。 參照完整性是建立在外關(guān)鍵字和主關(guān)鍵字之上的。 在參照表(從表)中,不允許參照不存在的主鍵值。 如果主鍵值更改了,那么在整個(gè)數(shù)據(jù)庫中,對(duì)該鍵值的所有引用要進(jìn)行一致的更改。 在被參照表(主表)中,當(dāng)其主鍵值被其他表所參照時(shí),該行不能被刪除也不允許改變。,48,外鍵約束的作用,在子表中插入數(shù)據(jù)時(shí)檢查(外鍵) 修改父表主鍵時(shí)檢查 刪除父表記錄時(shí)檢查,49,3、唯一性(UNIQUE)約束,可以使用 UNIQUE 約束確保在非主鍵列中不輸入重復(fù)的值。盡管 UNIQUE 約束和 PRIMARY KEY 約束都強(qiáng)制唯一性,但想要強(qiáng)制一列或多列組合(不是主鍵)的唯一性時(shí)應(yīng)使用 UNIQUE 約束而不是 PRIMARY KEY 約束。 可以對(duì)一個(gè)表定義多個(gè) UNIQUE 約束,但只能定義一個(gè) PRIMARY KEY 約束。 UNIQUE 約束允許 NULL 值,這與 PRIMARY KEY 約束不同。不過,當(dāng)與參與 UNIQUE 約束的任何值一起使用時(shí),每列只允許一個(gè)空值。 FOREIGN KEY 約束可以引用 UNIQUE 約束。,50,創(chuàng)建表時(shí),可以創(chuàng)建 UNIQUE 約束作為表定義的一部分。如果表已經(jīng)存在,可以添加 UNIQUE 約束(假設(shè)組成 UNIQUE 約束的列或列組合僅包含唯一的值)。 默認(rèn)情況下,向表中的現(xiàn)有列添加 UNIQUE 約束后,SQL Server 2005 Database Engine 將檢查列中的現(xiàn)有數(shù)據(jù),以確保所有值都是唯一的。如果向含有重復(fù)值的列添加 UNIQUE 約束,數(shù)據(jù)庫引擎 將返回錯(cuò)誤消息,并且不添加約束。 若要修改 UNIQUE 約束,必須首先刪除現(xiàn)有的 UNIQUE 約束,然后用新定義重新創(chuàng)建。 除非顯式指定了聚集索引,否則,默認(rèn)情況下將創(chuàng)建唯一的非聚集索引以強(qiáng)制執(zhí)行 UNIQUE 約束。,唯一性約束,51,創(chuàng)建表時(shí)創(chuàng)建UNIQUE約束,CREATE TABLE Tb_Student ( StuId char(10) PRIMARY KEY, StuName char(8) NOT NULL UNIQUE NONCLUSTERED, DeptId char(2) NOT NULL REFERENCES Tb_Dept ) - CREATE TABLE Tb_Student ( StuId char(10) PRIMARY KEY, StuName char(8) NOT NULL, DeptId char(2) NOT NULL REFERENCES Tb_Dept, CONSTRAINT UK_StuName UNIQUE (StuName) ),52,創(chuàng)建表結(jié)束后添加、刪除UNIQUE約束,CREATE TABLE Tb_Student ( StuId char(10) PRIMARY KEY, StuName char(8) NOT NULL, DeptId char(2) NOT NULL REFERENCES Tb_Dept ) - 添加UNIQUE約束 ALTER TABLE Tb_Student ADD CONSTRAINT UK_DepName UNIQUE (DeptName),53,刪除UNIQUE約束 ALTER TABLE Tb_Student DROP CONSTRAINT UK_DepName,SSMS創(chuàng)建惟一約束,55,4、默認(rèn)值約束,如果插入行時(shí)沒有為列指定值,默認(rèn)值則指定列中使用什么值。默認(rèn)值可以是計(jì)算結(jié)果為常量的任何值,例如常量、內(nèi)置函數(shù)或數(shù)學(xué)表達(dá)式。 若要應(yīng)用默認(rèn)值,可以通過在 CREATE TABLE 中使用 DEFAULT 關(guān)鍵字來創(chuàng)建默認(rèn)值定義。 默認(rèn)值必須與要應(yīng)用 DEFAULT 定義的列的數(shù)據(jù)類型相配。例如,int 列的默認(rèn)值必須是整數(shù),而不能是字符串。,56,CREATE TABLE Tb_Student ( StuId char(10) PRIMARY KEY, StuName char(8) NOT NULL, DeptId char(2) NOT NULL REFERENCES Tb_Dept, Sex char(2) NOT NULL DEFAULT M, BIRTHDAY SMALLDATETIME NOT NULL DEFAULT getdate() ),默認(rèn)值約束,57,添加默認(rèn)值約束 ALTER TABLE Tb_Student ADD CONSTRAINT DEF_Sex DEFAULT M FOR Sex 刪除默認(rèn)值約束 ALTER TABLE Tb_Student DROP CONSTRAINT DEF_Sex,SSMS中設(shè)置默認(rèn)值約束,59,5、CHECK約束,通過限制列可接受的值,CHECK 約束可以強(qiáng)制域的完整性。 CHECK約束類似于 FOREIGN KEY 約束,因?yàn)榭梢钥刂品湃肓兄械闹?。但兩者在確定有效值的方式上有所不同: FOREIGN KEY 約束從其他表獲得有效值列表 CHECK 約束通過不基于其他列中的數(shù)據(jù)的邏輯表達(dá)式確定有效值,60,可通過任何基于邏輯運(yùn)算符返回 TRUE 或 FALSE 的邏輯(布爾)表達(dá)式創(chuàng)建 CHECK 約束。 例如,邏輯表達(dá)式為:grade= 0 AND grade = 100。 可以將多個(gè) CHECK 約束應(yīng)用于單個(gè)列。還可以通過在表級(jí)創(chuàng)建 CHECK 約束,將一個(gè) CHECK 約束應(yīng)用于多個(gè)列。 自動(dòng)編號(hào)字段不能應(yīng)用檢查約束。,61,創(chuàng)建表時(shí),可以創(chuàng)建 CHECK 約束作為表定義的一部分。如果表已經(jīng)存在,則可以添加 CHECK 約束。表和列可以包含多個(gè) CHECK 約束。 如果 CHECK 約束已經(jīng)存在,則可以修改或刪除該約束。例如,可能需要修改表中某列的 CHECK 約束使用的表達(dá)式。 注意: 必須首先刪除現(xiàn)有的 CHECK 約束,然后使用新定義重新創(chuàng)建,才能修改 CHECK 約束。,CHECK約束,62,向現(xiàn)有表中添加 CHECK 約束后,CHECK 約束可以僅應(yīng)用于新數(shù)據(jù),也可以應(yīng)用于現(xiàn)有數(shù)據(jù)。默認(rèn)情況下,CHECK 約束同時(shí)應(yīng)用于現(xiàn)有數(shù)據(jù)和所有新數(shù)據(jù)。 使用 ALTER TABLE 語句
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年合伙策劃項(xiàng)目投資協(xié)議書
- 合規(guī)審查在企業(yè)投資決策中的應(yīng)用
- 新興產(chǎn)業(yè)在工業(yè)園區(qū)發(fā)展中的價(jià)值挖掘
- 基于運(yùn)動(dòng)生理學(xué)的健美操訓(xùn)練創(chuàng)新
- 智能電網(wǎng)時(shí)代抽水蓄能的角色與價(jià)值
- 2025瑕疵購房租賃合同
- 小麥抗白粉病抗性基因的分子標(biāo)記輔助選擇
- 2025企業(yè)主可以使用的商業(yè)合同
- 初階語文探索
- 外語專業(yè)思政教育的國(guó)際化發(fā)展趨勢(shì)
- 2025年教育公平與社會(huì)分層考試試題及答案
- T/CHES 113-2023生產(chǎn)建設(shè)項(xiàng)目水土保持監(jiān)測(cè)無人機(jī)應(yīng)用技術(shù)導(dǎo)則
- 2025-2030中國(guó)軍用機(jī)器人行業(yè)市場(chǎng)現(xiàn)狀供需分析及投資評(píng)估規(guī)劃分析研究報(bào)告
- excel計(jì)算機(jī)考試試題及答案
- 料倉維修合同協(xié)議書
- 2025河南開放大學(xué)人力資源管理050504期末在線考試答案
- 餐廳投資協(xié)議書
- 高二日語考試試卷及答案
- 鋼結(jié)構(gòu)安裝施工記錄 - 副本
- 超市食品安全管理制度手冊(cè)
- 海鮮水餃供貨合同協(xié)議
評(píng)論
0/150
提交評(píng)論