當前位置:首頁 » 編程語言 » sql創建約束語句

sql創建約束語句

發布時間: 2024-02-04 22:53:07

sql 怎麼添加非空約束

1、首先需要連接sql server,如下圖所示。

② SQL創建CHECK約束

現在要說的是在列這一層次過濾的基於表定義之前就規范好的 CHECK 約束。(MySQL 版本 >= 8.0.16)

  • mysql> create table f1 (r1 int constraint tb_f1_r1_chk1 check (mod(r1,3)=0));

  • Query OK, 0 rows affected (0.03 sec)

  • mysql> create table f2 (r1 int constraint tb_f2_r1_chk1 check (mod(r1,3)=0) not enforced);

  • Query OK, 0 rows affected (0.02 sec)

  • 這里 CHECK 約束的相關限制如下:

    1. constraint 名字在每碰物散個資料庫中唯一。

    也就是說單個資料庫里不存在相同的兩個 constraint,如果不定義,系統自動生成一個唯一的約束名字。

    2. check 約束針對語句 insert/update/replace/load data/load xml 生效;針對對應的 ignore 語句失效。

    3. 並非每笑氏個函數都可以使用,比如函數結果不確定的:NOW(),CONNECTION_ID(),CURRENT_USER()。

    4. 不適用於存儲過程和存儲函數。

    5. 系統變數不適用。

    6. 子查螞衫詢不適用。

    7. 外鍵動作(比如 ON UPDATE, ON DELETE) 不適用。

    8. enforced 默認啟用,如果單獨加上 not enforced ,check 約束失效。

③ 如何在SQL表中的性別進行check約束

1、下面打開SQL SERVER查看一下要操作的表的數據結構。

④ sql中怎樣創建外鍵約束

添加外鍵 ,alter table B

語法:alter table 表名 add constraint 外鍵約束名 foreign key(列名) references 引用外鍵表(列名)

如:

altertableStu_PkFk_Sc
addconstraintFk_s
foreignkey(sno)
referencesStu_PkFk_S(sno)

--cc是外鍵約束名,不能重復,也不能是int類型(如1,2,3)

add constraint cc

--B表裡的需要約束的欄位(id)

foreign key (id)

--A表後的(id)可省略

references A (id)

(4)sql創建約束語句擴展閱讀:

數據查詢語言,其語句,也稱為「數據檢索語句」,用以從表中獲得數據,確定數據怎樣在應用程序給出。保留字SELECT是DQL(也是所有SQL)用得最多的動詞,其他DQL常用的保留字有WHERE,ORDER BY,GROUP BY和HAVING。這些DQL保留字常與其他類型的SQL語句一起使用。

參考資料:結構化查詢語言_網路

⑤ SQL中的幾種約束的創建與刪除

約束的目的就是確保表中的數據的完整性。
常用的約束類型如下:
主鍵約束:(Primary Key constraint) 要求主鍵列唯一,並且不允許為空
唯一約束:(Unique Constraint) 要求該列唯一,允許為空,但只能出現一個空值
檢查約束:(Check Constraint) 某列取值范圍限制、格式限制等。如有關年齡的限制
默認約束:(Default Constraint) 某列的默認值,如我們的男性學員比較多,性別默認為男
外鍵約束:(Foreign Key Constraint) 用於在兩表之間建立關系,需要指定引用主表的哪一列
一、添加約束
在創建表時,我們可以在欄位後添加各種約束,但一般不這樣混用,推薦將添加約束和建表的語句分開編寫。
添加約束的語法如下:
Code:
Alter Table 表名
Add Constraint 約束名 約束類型 具體的約束類型
上述語法標識修改某個表,添加某個約束,其中約束名的命名規則推薦採用"約束類型_約束欄位"這樣的形式。
Code:
---添加主鍵約束
Alter Table stuInfo
Add Constraint PK_stuNO primary Key(stuNo)
---添加唯一約束
Alter Table stuInfo
Add Constraint UQ_stuID unique(stuID)
---添加默認約束
Alter Table stuInfo
Add Constraint DF_stuAddress default('地址不詳') for stuAddress
---添加檢查約束
Alter Table stuInfo
Add Constraint CK_stuAge check(stuAge between 15 and 40)
---添加外鍵約束
Alter Table stuMarks
Add Constraint FK_stuNo foreign key(stuNo) references stuInfo(stuNo)
二、刪除約束
如果錯誤的添加了約束,則可以刪除約束
刪除約束的語法如下:
Code:
Alter Table 表名
Drop Constraint 約束名
附加:在創建表的時候同時添加約束的寫法:
Code:
use stuDB
go
if exists(select * from Sysobjects where name = 'stuInfo')
drop table stuInfo
go
create table stuInfo
(
stuName varchar(20) not null primary key(stuName)
,stuID int not null unique(stuID)
,stuAddress varchar(20) not null default('地址不詳')
,stuAge int not null check(stuAge between 15 and 40)
)

熱點內容
三表聯查的sql語句 發布:2025-01-22 17:27:13 瀏覽:417
安卓怎麼解壓分卷壓縮 發布:2025-01-22 17:24:59 瀏覽:720
歐姆龍plc編程語言 發布:2025-01-22 17:21:48 瀏覽:395
和值編程 發布:2025-01-22 17:20:07 瀏覽:517
微信青少年模式獨立密碼是什麼 發布:2025-01-22 16:52:06 瀏覽:589
騰訊雲伺服器怎麼購買 發布:2025-01-22 16:45:01 瀏覽:630
天貓怎麼上傳視頻 發布:2025-01-22 16:40:02 瀏覽:727
安卓如何把抖音評論換成黑色 發布:2025-01-22 16:30:57 瀏覽:702
連接池Java 發布:2025-01-22 16:28:27 瀏覽:260
搶杠演算法 發布:2025-01-22 16:15:02 瀏覽:74