淺談MYSQL主鍵約束和唯一約束的區(qū)別
主鍵約束
PRIMARY KRY 主鍵 是唯一的 一張表只能有一個(gè)主鍵
AUTO_INCREMENT 一定要和主鍵連用
主鍵一定是非空的 NOT NULL
特點(diǎn):不能為空,不重復(fù)
##沒有約束 Create table stu0( Id int Name varcahr(50) ) Insert into stu0(name)value(“張三豐”); ##方式一:創(chuàng)建表,并且添加主鍵約束 Create table stu1( Id int primary key; Name varchar(50) ) ##方式二: Create table stu2( Id int, Name varchar(50), Primary key(name) )
成功: insert intostu1(in,name)value(“2,張三豐”);成功
測試一: insert into stu(id,name)value(null,”張三豐”);#失敗,提示不能為空
測試二:
插入重復(fù)值:報(bào)錯(cuò)
Duplicate entry'2' for key ‘PRIMARY'
Select *from stu1;
唯一約束
UNIQUE KEY 唯一約束
唯一約束可以保證數(shù)據(jù)的唯一性
每張數(shù)據(jù)表可以有存在多個(gè)唯一約束
唯一約束(unique)
不重復(fù),可以為空
##給名字添加唯一 的約束 Create table stu3( Id int primary key, Name varchar(50) unique ) Insert into stu3(id,name)value(1,”張三豐”); Insert into stu3(id,name)value(2,”張三豐”); ERROR 1062(23000):Duplicate entry ‘張三豐'for key ‘name' Insert into stu3(id,name)value(2,”張三”);
到此這篇關(guān)于淺談MYSQL主鍵約束和唯一約束的區(qū)別的文章就介紹到這了,更多相關(guān)MYSQL主鍵約束和唯一約束 內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
解決MySQL登錄報(bào)錯(cuò)1045-Access?denied?for?user?'root'@
這篇文章主要給大家介紹了關(guān)于解決MySQL登錄報(bào)錯(cuò)1045-Access?denied?for?user?‘root‘@‘‘(using?password:YES)的相關(guān)資料,文中一步步將解決的辦法介紹的非常詳細(xì),需要的朋友可以參考下2023-07-07
MySQL服務(wù)器 IO 100%的分析與優(yōu)化方案
這篇文章主要給大家介紹了關(guān)于MySQL服務(wù)器 IO 100%的相關(guān)資料,文中通過示例代碼介紹的介紹非常詳細(xì),對大家學(xué)習(xí)或者使用mysql具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2018-10-10
mysql實(shí)現(xiàn)本地keyvalue數(shù)據(jù)庫緩存示例
這篇文章主要介紹了代碼實(shí)現(xiàn)本地Key-Value緩存示例,大家參考使用吧2013-12-12
Mysql8報(bào)錯(cuò)this is incompatible with sql_mo
這篇文章主要介紹了Mysql8報(bào)錯(cuò)this is incompatible with sql_mode=only_full_group_by問題,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-01-01

