mysql表操作約束 MySQL操作表的約束

2021-10-18 11:56:47 字數 1870 閱讀 1744

完整性:指資料庫的準確性和一致性。

約束:是在表中定義的用於維護資料庫完整性的一些規則。

主鍵:給某乙個欄位來唯一標識所有記錄,值是唯一的,非空的

外來鍵:多個表之間參照的完整性。

一、設定非空約束

use教學管理資料庫;

show tables;create table專業表(

專業編號char(3) not null,

專業名稱varchar(30)

);desc 專業表;

二、設定欄位的預設值

drop table專業表;create table專業表(

專業編號char(3) not null(約束),

專業名稱varchar(30) default(預設的) '計算機');

desc 學生表;

三、設定唯一約束

drop table專業表;create table專業表(

專業編號char(3) not null,

專業名稱varchar(30) default(預設的) '計算機' unique(唯一)

desc 專業表;

四、設定主鍵約束

1)單字段主鍵drop table專業表;create table專業表(

專業編號char(3) not null(約束) primary(主要) key(設定主鍵約束),

專業名稱varchar(30)

desc 專業表;

(2)多欄位主鍵

drop table專業表;create table專業表(

專業編號char(3) not null,

專業名稱varchar(30),constraint pk_專業編號_專業名稱 primary key(設定主鍵約束)(專業編號,專業名稱)

檢視表結構

desc 專業表;

五、設定字段值自動增長

drop table專業表;create table專業表(

專業編號int primary key(設定主鍵約束) auto_increment(設定字元段自動增長),

專業名稱varchar(30)

檢視表結構

desc 專業表;

六、設定外來鍵

desc學生表;desc專業表;drop table學生表;create table學生表(

學生編號char(4) primary key(設定主鍵約束),

學生姓名varchar(10),

所屬專業編號int,

所屬班級編號char(3),

職務varchar(6),

性別char(1),

出生日期datetime,

籍貫varchar(50),

入學日期datetime,constraint(約束) fk_所屬專業編號 foreign key(設定外來鍵)(所屬專業編號)references(依附,屬於) 專業表(專業編號)

檢視表結構

desc 學生表;

mysql所支援的完整性約束

設定非空約束,含義:設定字段不能為空值

2.設定字段預設值,含義:當為資料庫表中插入一條新記錄時;如果沒有為某個字段賦值那麼資料庫會自動為這個字段插入預設值。

3.設定唯一約束;含義:設定不允許重複,保證不能重複

4.設定主鍵約束;含義:表示該欄位可以唯一的表示所有記錄

5.設定字元自動增長;含義:乙個資料庫表中只能有乙個字段使用該約束,該欄位型別必須是整形

6.設定外來鍵約束;含義:外加約束則保證多個表之間的參照完整性構建兩個表的兩個字段之間的關係

字段值自動增長的優點

當為資料庫表中插入新紀錄時,欄位上的值會自動生成唯一的id

設定欄位的預設值有什麼優點

如果沒有為某個字段賦值那麼資料庫會自動為這個字段插入預設值。

MySQL(二)操作表的約束

所謂完整性是指資料的準確性和一致性,而完整性檢查就是指檢查資料的準確性和一致性。mysql資料庫管理系統提供了一致機制來檢查資料庫表中的資料是否滿足規定的條件,以保證資料庫中資料的準確性和一致性,這種機制就是約束。完整性約束 完整性約束關鍵字 含義not null 約束欄位的值不能為空 defaul...

MySQL約束 資料表操作

作用 保證資料的完整性 一致性。分類 表級約束 對多個資料列的約束列級約束 對乙個資料列的約束 區別 表級約束只能在列定義時宣告 列級約束可以在定義後宣告 具體 not null非空約束primary key主鍵約束 保證唯一性,自動為非空,只有乙個unique key唯一約束 保證唯一性,可以為空...

Mysql 表的約束

約束型別 說明主鍵約束 primary key 要求主鍵列資料唯一,並且不允許空。主鍵可以包含表的一列或多列,如果包含火烈,則序號在表級定義。唯一約束 unique 要求該列唯一,允許為空。檢查約束 check 某列取值範圍限制 格式等限制,如年齡的約束。非空約束 not null 某類內容不能為空...