MySQL 資料約束

2022-09-17 20:57:20 字數 2464 閱讀 6014

非空約束
create

table

user

( uid

intnot

null,--

非空約束

uname varchar(10

), address

varchar(30) default

'山東省'--

預設值)

唯一約束
create

table

user

( uid

intunique,--

唯一約束

uname varchar(10

), address

varchar(30) default

'山東省'--

預設值)

-- 主鍵約束

-- 注意:

-- 1)通常情況下,每張表都會設定乙個主鍵字段。用於標記表中的每條記錄的唯一性。

-- 2)建議不要選擇表的包含業務含義的字段作為主鍵,建議給每張表獨立設計乙個非業務含義的id欄位。

create

table

user

( uid

intprimary

key,--

主鍵約束 非空+唯一

uname varchar(10

), address

varchar(30) default

'山東省'--

預設值)

insert

into

user( uid,uname) values('

張三');

自增長約束
create

table

user

( uid

intprimary

key auto_increment,--

自增長約束必須是主鍵

uname varchar(10

), address

varchar(30) default

'山東省'--

預設值)

insert

into

user(uname) values('

張三');

零填充
create

table

user

( uid

int(5) zerofill primary

key auto_increment,--

自增長約束必須是主鍵,零填充

uname varchar(10

), address

varchar(30) default

'山東省'--

預設值)

insert

into

user(uname) values('

張三');

-- delete from 清空表不能刪除約束

-- tauncate table 清空錶能刪除約束

外來鍵
create

table

dept(

deptid

intprimary

keyauto_increment,

deptname

varchar(10))

select

*from

dept;

select

*from

emp;

insert

into dept(deptname) values('

軟體開發部');

insert

into dept(deptname) values('

軟體測試部');

create

table

emp(

eid

intprimary

keyauto_increment,

ename

varchar(5

), deptid

int,

constraint emp_dept_fk foreign

key(deptid) references

dept(deptid)

)insert

into emp(ename,deptid) values('

張三',1);

1)被約束的表稱為副表,約束別人的表稱為主表,外來鍵設定在副表上的!!!

2)主表的參考字段通用為主鍵!

3)新增資料: 先新增主表,再新增副表

4)修改資料: 先修改副表,再修改主表

5)刪除資料: 先刪除副表,再刪除主表

mysql 延遲約束 mysql資料約束

1,預設值 create table student id int,name varchar 20 address varchar 20 default 山東淄博 預設值 drop table student 當欄位沒有插入值的時候,mysql自動給該字段分配預設值 insert into stud...

mysql怎麼約束 mysql 約束

4 約束 1 對乙個列新增的約束叫列級約束。對兩個或兩個以上的列新增的約束叫做表級約束。2 表級約束只能在字段後面新增,列級約束既可以新增在字段後面,也可以在最後新增。3 非空 預設只存在列級約束。主鍵 唯 一 外來鍵都既有表級約束又有列級約束。4 約束有 primary key 主鍵 unique...

mysql約束 MySQL 約束型別

約束是一種限制,它通過對錶的行或列的資料做出限制,來確保表的資料的完整性 唯一性。mysql中,常用的幾種約束 約束型別 主鍵外來鍵唯一非空自增預設值 關鍵字 primary key foreign key unique not null auto increment default 1 主鍵約束 ...