程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> SQL語句之 數據約束,sql語句約束

SQL語句之 數據約束,sql語句約束

編輯:MySQL綜合教程

SQL語句之 數據約束,sql語句約束


SQL語句之 數據約束

 

什麼是數據約束

數據約束用來限制用戶對數據的非法的修改操作。

 

1.約束字段的默認值

如果插入記錄時,沒有給某個字段賦值,那麼我們可以設置它的默認值

關鍵字:default

CREATE TABLE test1(
    tin INT,
    tname VARCHAR(20) DEFAULT '待定'
);
INSERT INTO test1(tin) VALUES (1);
SELECT * FROM test1;    

 

2.非空約束

約束一個字段,使它的值不能為空

關鍵字: not null

CREATE TABLE test1(
tin INT,
tname VARCHAR(20) NOT NULL
);

這裡的非空指的是null 和 沒有插入值,如果是空字符串,是可以插入的。

 

3.約束重復值

使不同的記錄的字段的值不能相同。

關鍵字: unique

CREATE TABLE test1(
tin INT UNIQUE,
tname VARCHAR(20)
);

雖然不可重復,但是null可以插入,而且可以多個記錄的值為null。

 

4.主鍵約束

當需要每一條記錄都有一個唯一的標識,這就需要使用主鍵,例如生活中的ID,一般公司內每個人的ID都是唯一的,對每個人都是唯一的標識。

關鍵字:primary key

CREATE TABLE test1(
tin INT PRIMARY KEY,
tname VARCHAR(20)
);

主鍵的特性: 唯一,不能為null。

 

5.自增長

有些數據我們希望每插入一條記錄到表中,那麼該記錄的自動獲得一個編號,每次插入一條記錄,該編號就自動加1,例如ID,這就需要用到自增長。

關鍵字:auto_increment

CREATE TABLE test1(
tin INT PRIMARY KEY AUTO_INCREMENT,
tname VARCHAR(20)
);

自增長的特性: 

我們使用delete from 語句來刪掉表中的所有數據,自增長數值是不會重置的。

如果使用truncate fom 語句來刪除表中所有數據,自增長數的值會重新從0算起。

TRUNCATE TABLE test;

 

 

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved