⑴ sql server如何添加約束
--添加unique約束
alter
table
表名
add
constraint
約束名
unique
(規格說明)
--刪除原來的約束需要知道約束名
--用sp_helpconstraint取得約束名
exec
sp_helpconstraint
'表名'
執行以後constraint_type列應該有一個是check
on
column
數量
看看constraint_name是什麼,然後用以下語句刪除
alter
table
表名
drop
constraint
約束名
--添加新的check約束
alter
table
表名
with
nocheck
add
constraint
約束名
check(數量
between
1
and
1000)
⑵ 誰知道資料庫中添加各種約束的SQL語句的寫法啊,求示例,請高手幫忙!!!!
語法:
alter
table
表名
add
constraint
約束名
具體約束類型
欄位名
例如給表A的欄位StuNo添加一個主鍵約束(簡寫PK)
alter
table
A
add
constraint
PK_StuNo
primary
key(StuNo)
例如給表A的欄位Sex添加一個檢查約束(簡寫CK)
alter
table
A
add
constraint
CK_Sex
check(Sex>18
and
Sex<40)
例如給表B的欄位StuNo添加一個外鍵約束(簡寫FK)
外鍵是來自於A表的主鍵
alter
table
B
add
constraint
FK_StuNo
foreign
key(StuNo)
references
A(StuNo)
基本五個約束的語法就這樣、很簡單的
注意一點:上面那個約束名首先是約束類型的簡寫,例如PM_、FK_、CK_等、後面可以自己定義
在這里我為了好區分是那個欄位的約束我就寫的哪個欄位名了,希望你能看懂~
⑶ SQL資料庫中為列增加約束的問題
對著表定義窗口右鍵選擇CHECK 約束 在 點添加 在「表達式」一行中填寫就行了。
1. len([列名])=10
2. [列名] like '00%'
3.[列名] like '__[0-9][0-9]%'
4.[列名] like '____[_]%'
5.[列名] like '_____[a-z,A-Z][a-z,A-Z][a-z,A-Z]%'
這樣式不是很簡單啊 直接操作工具就行了。這應該沒超出你所學吧 都是 sql的運算符
⑷ SQL建約束
-------添加主鍵約束(將stuNo作為主鍵)--------
alter
table
stuInfo
Add
constraint
PK_stuNo
primary
key
(stuNo)
-------添加唯一鍵約束(身份證唯一)--------
alert
table
stuInfo
Add
constraint
UQ_stuID
unique(stuID)
-------添加默認約束(如果地址不詳,默認為地址不詳)--------
alter
table
stuInfo
Add
constraint
DF_stuAddress
default('地址不詳')
for
stuAddress
-------添加檢查約束,要求年齡只能在15~40歲之間--------
alter
table
stuIfo
Add
constraint
CK_stuAge
CHECK
(stuAge
between
15
and
40)
-------添加外鍵約束(主表stuInfo
和從表stuMarks
建立關系,關聯欄位為stuNo)--------
alter
table
stuMarks
ad
constraint
FK_stuNO
foreign
key(stuNo)
references
stuInfo(stuNo)
go
⑸ 如何在SQL資源管理器中添加約束表達式
1、首先我們打開電腦里的SQL資源管理器,如圖是一個Student表其中我們主要針對於這個表中的Phone這一列來進行演示。
⑹ SQL約束問題: 為student表的sno添加一個check約束
一個欄位的數據類型是兩個的話、插入數據會出錯
要麼你直接數字類型、要麼直接字元創類型
alter table student (如果sno是數字類型)
add constraint check_s check (len(sno)=9 and left(sno,4)=2002)
alter table student (如果sno是字元串類型)
add constraint check_s check (len(sno)=9 and left(sno,4)='2002')
⑺ SQL 怎麼添加非空約束
1、首先需要連接sql server,如下圖所示。
⑻ SQL 簡單約束
1
PRIMARY
KEY約束
例如,下面的SQL語句創建一個名為student的表,其中指定student_number為主鍵:
USE
test
GO
CREATE
TABLE
student
(sutdent_number
int
PRIMARY
KEY,
student_name
char(30))
GO
2
FOREIGN
KEY約束
例如,下面就是一個使用FOREIGN
KEY約束的例子:
CREATE
TABLE
proct
(proct_number
int,
student_number
int
FOREIGN
KEY
REFERENCES
student(student_number)
ON
DELETE
NO
ACTION)
GO
3
UNIQUE約束
例如,下面的SQL語句創建了一個test2表,其中指定了c1欄位不能包含重復的值:
USE
test
GO
CREATE
TABLE
test2
(c1
int
UNIQUE,
c2
int)
GO
INSERT
test2
VALUES(1,100)
GO
如果再插入一行:
INSERT
test2
VALUES(1,200)
4
CHECK約束
例如,下面的SQL語句創建一個成績(score)表,其中使用CHECK約束來限定成績只能在0~100分之間:
CREATE
TABLE
score
(sutdent_number
int,
score
int
NOT
NULL
CHECK(score>=0
AND
score
⑼ SQL如何為列增加日期約束
可按如下語句加約束:
altertable表名addconstraintCK_Datecheck(日期欄位betweencast('1900-1-1'asdatetime)andcast('2990-1-1'asdatetime))
check約束簡介:
在資料庫中,CHECK 約束是指約束表中某一個或者某些列中可接受的數據值或者數據格式。例如,可以要求 authors 表的 postcode 列只允許輸入六位數字的郵政編碼。
CHECK 約束可以應用於一個或者多個列,也可以將多個CHECK 約束應用於一個列。
當除去某個表時,對這個表的CHECK 約束也將同時被去除。
⑽ SQL 中如何批量添加約束(主要是默認值約束)
暈。沒這么一說吧,,編程基本都是用的英文的。我給你看下我寫的約束:/*--添加BBsDBD表的各列的約束--*/alter
table
BBsusersadd
constraint
pk_uid
primary
key
(uid),
--主鍵
constraint
df_upassword
default
(888888)
for
upassword,
--密碼的默認值為6個8
constraint
df_usex
default
(1)
for
usex,
--性別默認為男(1)
constraint
df_uclass
default
(1)
for
uclass,
--級別默認為1星級
constraint
df_regdate
default
(getdate())
for
uregdate,
--日期默認為當前日期
constraint
df_ustate
default
(0)
for
ustate,
--狀態默認為離線
constraint
df_upoint
default
(20)
for
upoint,
--積分默認為20點
constraint
ck_uemail
check
(uemail
like
'%@%'),
--郵箱地址必須包含『@』字元
constraint
ck_upassword
check
(len(upassword)>=6)
--密碼至少6位數GO註:--密碼至少6位數(是這行約束的注釋)
答案補充
現在編程的工具用的都是英文的。不支持中文編程SQL2005沒有中文編程的,包括約束。
答案補充
我暈。。沒有這個的。你所看到的中文是在資料庫查詢的時候用
AS關鍵字重新命名的,例如:selsct
name
as
姓名,age
as
年齡
from
stuInfo.這樣查詢出來的結果就是表頭是中文的。。另外。你想插入中文數據就比如:insert
into
c
(cid,cn)values('s001','稅收基礎')那麼表建立好了之後,就是cid列:s001,cn列:
稅收基礎(中文的現實)。
答案補充
說真的,我也不知道,這個約束是你們規定必須要的,還是你自己想去嘗試。。說真的,SQL2005裡面不需要加這個約束的。。也沒有用位元組或者Unicode碼
加這方面的約束的方法。我工作了2年多了,從來沒有在這資料庫方面有這個要求的。。真的是不需要。。