規則和約束

2021-07-29 15:32:52 字數 1579 閱讀 2168

--rule and constraint

--規則和約束

--建立規則:

create rule rule_name

as@***='f' or @***='m'

--create table classmates

(st_no varchar(20),

st_name varchar(10),

st_*** varchar(2),

st_bir date)

insert into classmates(st_name,st_***)values('zzy','f')

select * from classmates

--create rule rule_name

--繫結規則:區大小寫

exec sp_bindrule 'rule_name','classmates.st_***'

----count for ***='man' to x

--select 1000-x

--解除繫結:

exec sp_unbindrule 'classmates.st_***'

--刪除規則:

drop rule rule_name

----出生日期:設定不小於現在日期:姓名不能以數字開頭

create rule rule_bir

as@bir>=getdate()

--@name=

exec sp_bindrule 'rule_bir','classmates.st_bir'

--格式轉換:

insert into classmates(st_name,st_bir)values('aa',cast('03 26 2016'as date))

print getdate()

--格式:03 27 2017 5:16pm

--轉換格式:

--約束:

primary key id 唯一標識代表ot改記錄

foreign key 在另外表中是關鍵字

unique key

default key

check key check(性別='男' or 性別='女')

not null key

--create table pplt

(pp_id varchar(18) primary key,

pp_na varchar(20),

pp_gn varchar(1) check(pp_gn='f' or pp_gn='m'),

pp_st varchar(18) foreign key references pplt(pp_id),

pp_ag int check(pp_ag>=20 and pp_ag<=60),

pp_nn varchar(10) default('漢族'),

pp_pl varchar(10) not null)

insert into pplt (pp_id,pp_pl,pp_gn) values('1112145456454','黨員','f'

select * from pplt

索引和約束

索引優點 1.索引使得檢索的資料的速度大大加快 2.建立索引時自動新增了唯一性約束,確保每一條資料的唯一性 3.可以加快表與表之間的鏈結,提高多表查詢的速度 4.在分組和排序子句進行資料彙總的時候,顯著減少查詢中分組和排序的時間。每張表都會有乙個rowid實體地址列,用來唯一標誌一條記錄所在物理 位...

索引和約束

一 雖然索引引用可以提高資料的查詢速度,但是任何事物都有雙刃劍,它也有一些缺點 1 索引會佔據一定的磁碟空間,就像有安筆劃的查詢的目錄的書會比沒有這種目錄的書頁數要多一些一樣。2 索引減慢了資料的插入和刪除速度。因為每次刪除更新資料都要更新索引,乙個表擁有的索引越多則寫操作的平均效能下降越大。cre...

常量和約束訪問

c 語言中,關鍵字const可以約束物件的訪問性質,使物件值一旦初始化就不允許修改。被約束為唯讀的物件稱為常物件。1.標識常量 c 語言中,當用關鍵字const約束基本型別儲存單元為唯讀時,在程式中使用儲存單元的名字就像使用常量值一樣,即用識別符號表示數值,所以稱為標識常量,簡稱常量。定義標識常量的...