SQL語法CONSTRAINT約束操作詳情
更新時間:2022年01月15日 09:40:01 作者:霧里看花花里看霧?
這篇文章主要介紹了SQL語法CONSTRAINT約束操作詳情,CONSTRAINT,約束,即對數(shù)據(jù)庫表中的數(shù)據(jù)進行約束,以保證數(shù)據(jù)記錄的完整性和有效性。下面來看看文章的學習介紹吧
CONSTRAINT約束,即對數(shù)據(jù)庫表中的數(shù)據(jù)進行約束,以保證數(shù)據(jù)記錄的完整性和有效性。
比較常用的是,創(chuàng)建表時添加約束,但是為了整理記錄,這里把所有的用法都寫下來,但是大家按照最常見的重點掌握。
1.主鍵約束 primary key
#主鍵約束 primary key #添加主鍵 添加后系統(tǒng)會默認為對應的列添加索引 提高檢索速度? #方法一(單列主鍵):id int PRIMARY KEY //方法一是創(chuàng)建表時 當前定義字段后 方法二是創(chuàng)建表時 所有定義字段后 #方法二(單|多列主鍵):CONSTRAINT pk1 PRIMARY KEY(name,deptId) //CONSTRAINT pk1可以省略 pk1是索引名 可以任意取 #方法三(創(chuàng)建表后添加):ALTER TABLE emp1 ADD PRIMARY KEY(eid) //可以是單列也可以是多列 #刪除主鍵 #ALTER TABLE emp1 DROP PRIMARY KEY //每個表只有一個主鍵 刪除的時候不分單列主鍵還是聯(lián)合主鍵 #主鍵作用是主鍵約束的列是唯一且非空
2.自增長約束 auto_increment
#自增長約束 auto_increment? #一般用來實現(xiàn)主鍵的自增長約束 用戶就不再需要為其賦值 數(shù)據(jù)庫自動賦值 默認從1開始 #id int PRIMARY KEY auto_increment #創(chuàng)建表時可以指定自增長初始值 /*CREATE TABLE IF NOT EXISTS mydb1.employee( ?? ??? ?id int, ?? ??? ?name varchar(20), ?? ??? ?gender varchar(10), ?? ??? ?salary double )auto_increment=100;*/ #創(chuàng)建表后可以添加自增長初始值 #ALTER TABLE emp2 auto_increment=100 #delete 后默認自增長從斷點開始 #truncate 后默認自增長從1開始(無論有無初始值)
3.非空約束 not null
#非空約束 not null ?//真正的空是NULL 而不是'NULL'或者'' #添加約束 #方法一:name varchar(20) not null #方法二:ALTER TABLE emp3 MODIFY name varchar(20) not null (創(chuàng)建表后添加) #刪除約束 #ALTER TABLE emp3 MODIFY name varchar(20)
4.唯一約束 unique
#唯一約束 unique #添加約束 ?//在mysql中NULL和任何值都不相同 包括它自己 #方法一:name varchar(20) unique #方法二:ALTER TABLE emp4 ADD CONSTRAINT unique_pn unique(name) (創(chuàng)建表后添加) #刪除約束 #ALTER TABLE emp4 DROP INDEX unique_pn // unique_pn 是約束名 若沒有名字 則默認是使用的列名
5.默認約束 default
#默認約束 default #添加約束 #方法一:address varchar(20) DEFAULT '北京' #方法二:ALTER TABLE emp5 MODIFY address varchar(20) DEFAULT '北京' (創(chuàng)建表后添加) #刪除約束 #ALTER TABLE emp5 MODIFY address varchar(20) DEFAULT NULL
6.零填充約束 zerofill
#零填充約束 zerofill (顯示效果) 了解即可 #添加約束 #address varchar(20) zerofill #刪除約束 #ALTER TABLE emp6 MODIFY id int?
到此這篇關于SQL語法CONSTRAINT約束操作詳情的文章就介紹到這了,更多相關SQL語法CONSTRAINT約束操作內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
解決Java程序使用MySQL時返回參數(shù)為亂碼的示例教程
這篇文章主要介紹了解決Java程序使用MySQL返回參數(shù)為亂碼的問題的教程,通過示例來講解utf-8編碼在MySQL中的相關配置,示例需要的朋友可以參考下2015-12-12
如何解決MySQL安裝遇到Start service紅叉問題
在安裝MySQL時,若遇到StartService步驟打紅叉無法繼續(xù),可通過計算機管理以管理員身份運行服務,找到MySQL服務,更改為本地系統(tǒng)賬戶登錄,解決安裝問題,此方法為實際操作經驗,可供參考,確保安裝順利完成2024-10-10
MySql服務器系統(tǒng)變量和狀態(tài)變量介紹
這篇文章主要介紹了MySql服務器系統(tǒng)變量和狀態(tài)變量介紹,本文分別講解了它們的作用、設置方法和獲取方法,需要的朋友可以參考下2014-12-12
30個mysql千萬級大數(shù)據(jù)SQL查詢優(yōu)化技巧詳解
本文總結了30個mysql千萬級大數(shù)據(jù)SQL查詢優(yōu)化技巧,特別適合大數(shù)據(jù)里的MYSQL使用2018-03-03

