MySQL之主鍵約束

2021-10-01 08:49:15 字數 934 閱讀 1657

mysql支援的完整性約束

約束條件			描述

primary key 主鍵約束

unique 唯一約束

not null 非空約束

default 預設約束

auto_increment 自動增長約束

foreign key 外來鍵約束

主鍵約束

特點:唯一且為空

主鍵可以由乙個字段組成,也可以由多個字段組成

如果主鍵可以由乙個字段組成既可以新增到列級也可以新增到表級

如果由多個字段組成只能新增到表級

一、在建立表的時候新增約束

(1)在字段的列級新增約束

create table 表名(欄位名 字段型別 primary key)

(2)表級上新增主鍵約束

create table 表名(欄位名1 字段型別1,

欄位名2 字段型別2,

.....

. 欄位名n 字段型別n,

[constraint 主鍵約束名] primary key(欄位名)

);(3)多個字段作為元件,只能新增到表級

create table 表名(欄位名1 字段型別1,

欄位名2 字段型別2,

.....

. 欄位名n 字段型別n,

[constraint 主鍵約束名] primary key(欄位名1,欄位名2)

);二、給已有表新增主鍵

語法:alter table 表名 add [constraint 主鍵約束名] primary key(欄位名)

;三、刪除主鍵約束

語法:alter table 表名 drop primary key;

oracle 約束之主鍵約束

1 主鍵約束作用 確保表中每一行資料是唯一的,要求非空且唯一 2 一張表中只能設定乙個主鍵約束 主鍵約束可以由多個字段構成 聯合主鍵或復合主鍵 1 在建立表時設定主鍵約束 建立聯合主鍵 通過user constraints資料字典查詢表中主鍵的名稱 2 修改表時新增主鍵約束 alter table ...

MySQL約束條件之主鍵與外來鍵

但從約束層面上來說 相當於是 not null unique 非空且唯一 在此基礎之上還可以加快資料的查詢 innodb儲存引擎規定了一張表必須有且只有乙個主鍵 因為innodb是通過主鍵的方式來構造表的 如果沒有設定主鍵 情況1 沒有主鍵和其他約束條件 innodb會採用隱藏的字段作為主鍵 不能加...

mysql主鍵索引 MySQL索引之主鍵索引

在mysql裡,主鍵索引和輔助索引分別是什麼意思,有什麼區別?上次的分享我們介紹了聚集索引和非聚集索引的區別,本次我們繼續介紹主鍵索引和輔助索引的區別。1 主鍵索引 主鍵索引,簡稱主鍵,原文是primary key,由乙個或多個列組成,用於唯一性標識資料表中的某一條記錄。乙個表可以沒有主鍵,但最多只...