當前位置:首頁 » 編程語言 » sql的完整性約束其主要約束有
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

sql的完整性約束其主要約束有

發布時間: 2023-01-16 16:14:44

『壹』 在sql中,列級完整性約束和表級完整性約束分別分為幾種情況請列舉。

建表的同時通常還可以定義與該表有關的完整性約束條件,這些完整性約束條件被存入系統的數據字典中,當用戶操作表中數據時由DBMS自動檢查該操作是否違背這些完整性約束條件.如果完整性約束條件涉及到該表的多個屬性列,則必須定義在表級上,否則既可以定義在列級也可以定義在表級.
例1 建立一個「學生」表Student,它由學號Sno、姓名Sname、性別Ssex、年齡Sage、所在系Sdept五個屬性組成.其中學號不能為空,值是唯一的,並且姓名取值也唯一.
CREATE TABLE Student
(Sno CHAR(5)NOT NULL UNIQUE,/*列級完整性約束條件,Sno取值唯一,
Sname CHAR(20)UNIQUE,不許取空值*/
Ssex CHAR(1),
Sage INT,
Sdept CHAR(15));
常用完整性約束:
主碼約束:PRIMARY KEY
唯一性約束:UNIQUE
非空值約束:NOT NULL
參照完整性約束

『貳』 簡述SQL Server系統中提供了哪幾大類完整性約束來實現關系資料庫的完整性約束

1、實體完整性:主鍵值必須非空且唯一;

2、參照完整性:外鍵的值必須為空或者其他關系(即主表)的主鍵值;

3、域完整性約束:屬性值應該是域中的值以及一個屬性能否為空(NULL);

4、

『叄』 sql中表達完整性約束的機制主要有哪幾種

在SQL中,表達完整性約束的規則有主鍵約束、外鍵約束、屬性值約束和全局約束等多種形式。
(1)主鍵約束:可用主鍵子句或主鍵短語來定義。
如 PRIMARY KEY (S#) (主鍵子句)
S# CHAR (4) PRIMARY KEY (其中,PRIMARY KEY 為主鍵短語)
(2)外鍵約束:可用外鍵子句來定義
如 FOREIGN KEY (S#) REFERNCE S(S#)

(3)屬性值約束:包括非空值約束(NOT NULL);基於屬性的檢查子句(CHECK) ;
域約束子句(在「CREAT DOMAIN」語句中出現CHECK子句)
如CREAT DOMAIN AGE SMALLINT CHECK (VALUE>10)
(4)全局約束:包括基於元組的檢查子句(CHECK)和斷言
斷言的句法為:CREATE ASSERTION 斷言名 CHECK 條件

『肆』 資料庫完整性里主要有那些約束

參照完整性
指建立兩個關系建立聯系的主外鍵的約束
foreign
key
外鍵
4,實體完整性.域完整性保證表中數據的合理性
check
檢查
default
默認
not
null
不為空
unique
唯一約束
3。
1.實體完整性
指關系的主關鍵字不為空且不重復
primary
key
主鍵
2、參照完整性和用戶定義完整性域完整性.用戶自定義完整性除了上述關鍵字

『伍』 資料庫用SQL語言建表,什麼是完整性約束請問如何寫出各種完整性約束

一、數據的完整性

實體完整性

實體完整性簡單的說,就是將表中的每一行看作一個實體。實體完整性要求表的標示符列或主鍵的完整性。可以通過建立唯一索引、PRIMARY KEY約束、UNIQUE約束,以及列的IDENTITY屬性來實施實體完整性。

域完整性

域完整性是指給定列的輸入有效性。要求表中指定列的數據具有正確的數據類型、格式和有效的數據范圍。強制域有效性的方法有:限制類型(通過數據類型)、格式(通過 CHECK 約束和規則)或可能值的范圍。域完整性通過 FOREIGN KEY 約束、CHECK 約束、DEFAULT 定義、NOT NULL 定義和規則來實現。

引用完整性

引用完整性又稱參照完整性。引用完整性維持被參照表和參照表之間的數據一致性,他通過主鍵(PRIMARY KEY)約束和外鍵(FOREIGN KEY)約束來實現。

用戶定義完整性

二、約束操作

與表相關的約束

在SQL 2008中,常用有6種約束,分別是NOT NULL,UNIQUE,PRIMARY KEY,FOREIGN KEY,DEFAULT和CHECK.

--添加主鍵約束(即primary key約束)

alter table goods add constraint pk_gid primary key(gid)

--1.刪除主鍵約束

alter table goods drop pk_gid

--添加唯一約束(即unique約束)

alter table goods add constraint uq_gname unique(gname)

--刪除唯一約束:仿1.

--添加預設約束(即default約束)

alter table goods add constraint def_gtel default 0000-00000000 for gtel

--刪除預設約束:仿1.

--添加檢查約束(即check約束)

alter table goods add constraint ck_gprice check(gprice>500)

--刪除check約束:仿1.

--創建表2

create table g_p

(

wno int identity(1,1) primary key,

gno int

)

--添加外鍵約束(即foreign key約束)

alter table g_p

add constraint fk_gno

foreign key(gno) references goods(gid)

--刪除外鍵約束:仿1.

--使用newid()

select newid()--生成全球唯一的ID號

create table customer

(

custID uniqueidentifier not null default newid(),

customer char(30) not null

)

insert customer values(newid(),\''\''accp\''\'')--向customer中插入信息

-----------------------------------慢慢研究----

『陸』 sql server 中有哪幾種約束

sql
server中主要有四種約束:
1、實體完整性約束(每一行反應不同的實體)
通過索引,唯一約束。主鍵約束或標識屬性來體現
2、域完整性約束(指給定列的輸入有效性)
通過限制數據類型,檢查約束,輸入格式,外鍵約束,默認值,非空等體現
3、引用完整性約束(表之間的聯系)
通過主外建來建立完整性約束
4、自定義完整性約束(根據用戶的需求)

『柒』 sql server 中有哪幾種約束

一共有五種約束:這里以學生表stuinfo為例1、添加主鍵約束alter table stuinfo add costraint pk_stuno primary key (stuno)2、唯一約束alter table stuinfo add constraint uq_stuid unique (stuid)3、添加默認約束alter table stuinfo add constraint df_address default ('地址不詳') for address4、添加檢查約束alter table stuinfo add constraint ck_age check (age between 15 and 40) 這是年齡在15到40之間5、添加外鍵約束alter table stumarks add constraint fk_stuno foreign key (stuno) references stuinfo (stuno)這是一個成績表(stumarks)引用學生信息表中的列 學號