欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

SQL?PRIMARY?KEY唯一標(biāo)識(shí)表中記錄的關(guān)鍵約束語句

 更新時(shí)間:2023年12月10日 09:37:14   作者:小萬哥  
這篇文章主要為大家介紹了SQL?PRIMARY?KEY唯一標(biāo)識(shí)表中記錄的關(guān)鍵約束語句詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

SQL NOT NULL 約束

SQL NOT NULL 約束用于強(qiáng)制確保列不接受 NULL 值。這意味著該字段始終包含一個(gè)值,而不允許插入新記錄或更新記錄時(shí)不提供此字段的值。

在 CREATE TABLE 時(shí)使用 SQL NOT NULL

以下 SQL 確保在創(chuàng)建 "Persons" 表時(shí),“ID”、“LastName” 和 “FirstName” 列將不接受 NULL 值:

CREATE TABLE Persons (
    ID int NOT NULL,
    LastName varchar(255) NOT NULL,
    FirstName varchar(255) NOT NULL,
    Age int
);

在 ALTER TABLE 時(shí)使用 SQL NOT NULL

要在已創(chuàng)建的 "Persons" 表上的 "Age" 列上創(chuàng)建 NOT NULL 約束,使用以下 SQL:

對(duì)于 SQL Server / MS Access:

ALTER TABLE Persons
ALTER COLUMN Age int NOT NULL;

對(duì)于 MySQL / Oracle(10G 之前的版本):

ALTER TABLE Persons
MODIFY COLUMN Age int NOT NULL;

對(duì)于 Oracle 10G 及更高版本:

ALTER TABLE Persons
MODIFY Age int NOT NULL;

通過這些 SQL 語句,您可以確保指定列不會(huì)包含 NULL 值,從而增強(qiáng)數(shù)據(jù)的完整性。

SQL UNIQUE 約束

SQL UNIQUE 約束確保列中的所有值都是不同的。UNIQUE 和 PRIMARY KEY 約束都為列或一組列提供了唯一性的保證。PRIMARY KEY 約束自動(dòng)具有 UNIQUE 約束。每個(gè)表只能有一個(gè) PRIMARY KEY 約束,但可以有多個(gè) UNIQUE 約束。

在 CREATE TABLE 時(shí)使用 SQL UNIQUE 約束

以下 SQL 在創(chuàng)建 "Persons" 表時(shí)在 "ID" 列上創(chuàng)建了一個(gè) UNIQUE 約束:

對(duì)于 SQL Server / Oracle / MS Access:

CREATE TABLE Persons (
    ID int NOT NULL UNIQUE,
    LastName varchar(255) NOT NULL,
    FirstName varchar(255),
    Age int
);

對(duì)于 MySQL:

CREATE TABLE Persons (
    ID int NOT NULL,
    LastName varchar(255) NOT NULL,
    FirstName varchar(255),
    Age int,
    UNIQUE (ID)
);

要為 UNIQUE 約束命名,并在多列上定義 UNIQUE 約束,請(qǐng)使用以下 SQL 語法:

對(duì)于 MySQL / SQL Server / Oracle / MS Access:

CREATE TABLE Persons (
    ID int NOT NULL,
    LastName varchar(255) NOT NULL,
    FirstName varchar(255),
    Age int,
    CONSTRAINT UC_Person UNIQUE (ID, LastName)
);

在 ALTER TABLE 時(shí)使用 SQL UNIQUE 約束

要在表已經(jīng)創(chuàng)建的情況下在 "ID" 列上創(chuàng)建 UNIQUE 約束,請(qǐng)使用以下 SQL:

對(duì)于 MySQL / SQL Server / Oracle / MS Access:

ALTER TABLE Persons
ADD UNIQUE (ID);

要為 UNIQUE 約束命名,并在多列上定義 UNIQUE 約束,請(qǐng)使用以下 SQL 語法:

對(duì)于 MySQL / SQL Server / Oracle / MS Access:

ALTER TABLE Persons
ADD CONSTRAINT UC_Person UNIQUE (ID, LastName);

刪除 UNIQUE 約束

要?jiǎng)h除 UNIQUE 約束,請(qǐng)使用以下 SQL:

對(duì)于 MySQL:

ALTER TABLE Persons
DROP INDEX UC_Person;

對(duì)于 SQL Server / Oracle / MS Access:

ALTER TABLE Persons
DROP CONSTRAINT UC_Person;

通過這些 SQL 語句,您可以在數(shù)據(jù)庫(kù)中定義和管理 UNIQUE 約束,以確保列中的數(shù)據(jù)唯一性。

SQL PRIMARY KEY 約束

SQL PRIMARY KEY 約束唯一標(biāo)識(shí)表中的每條記錄。主鍵必須包含唯一的值,并且不能包含 NULL 值。一個(gè)表只能有一個(gè)主鍵;在表中,這個(gè)主鍵可以由單個(gè)列(字段)或多個(gè)列(字段)組成。

在 CREATE TABLE 時(shí)使用 SQL PRIMARY KEY

以下 SQL 在創(chuàng)建 "Persons" 表時(shí)在 "ID" 列上創(chuàng)建了一個(gè) PRIMARY KEY

對(duì)于 MySQL:

CREATE TABLE Persons (
    ID int NOT NULL,
    LastName varchar(255) NOT NULL,
    FirstName varchar(255),
    Age int,
    PRIMARY KEY (ID)
);

對(duì)于 SQL Server / Oracle / MS Access:

CREATE TABLE Persons (
    ID int NOT NULL PRIMARY KEY,
    LastName varchar(255) NOT NULL,
    FirstName varchar(255),
    Age int
);

要允許對(duì)主鍵約束進(jìn)行命名,并定義在多列上的主鍵約束,請(qǐng)使用以下 SQL 語法:

對(duì)于 MySQL / SQL Server / Oracle / MS Access:

CREATE TABLE Persons (
    ID int NOT NULL,
    LastName varchar(255) NOT NULL,
    FirstName varchar(255),
    Age int,
    CONSTRAINT PK_Person PRIMARY KEY (ID, LastName)
);

注意: 在上面的示例中只有一個(gè) PRIMARY KEYPK_Person)。然而,主鍵的值由兩個(gè)列(ID + LastName)組成。

在 ALTER TABLE 時(shí)使用 SQL PRIMARY KEY

要在表已經(jīng)創(chuàng)建的情況下在 "ID" 列上創(chuàng)建主鍵約束,請(qǐng)使用以下 SQL:

對(duì)于 MySQL / SQL Server / Oracle / MS Access:

ALTER TABLE Persons
ADD PRIMARY KEY (ID);

要允許對(duì)主鍵約束進(jìn)行命名,并定義在多列上的主鍵約束,請(qǐng)使用以下 SQL 語法:

對(duì)于 MySQL / SQL Server / Oracle / MS Access:

ALTER TABLE Persons
ADD CONSTRAINT PK_Person PRIMARY KEY (ID, LastName);

注意: 如果使用 ALTER TABLE 添加主鍵,則主鍵列必須在創(chuàng)建表時(shí)聲明為不包含 NULL 值。

刪除 PRIMARY KEY 約束

要?jiǎng)h除主鍵約束,請(qǐng)使用以下 SQL:

對(duì)于 MySQL:

ALTER TABLE Persons
DROP PRIMARY KEY;

對(duì)于 SQL Server / Oracle / MS Access:

ALTER TABLE Persons
DROP CONSTRAINT PK_Person;

通過這些 SQL 語句,您可以在數(shù)據(jù)庫(kù)中定義和管理 PRIMARY KEY 約束,以確保表中的數(shù)據(jù)具有唯一的標(biāo)識(shí)。

以上就是SQL PRIMARY KEY唯一標(biāo)識(shí)表中記錄的關(guān)鍵約束語句的詳細(xì)內(nèi)容,更多關(guān)于SQL PRIMARY KEY約束的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • MySQL密碼正確卻無法本地登錄的解決方法

    MySQL密碼正確卻無法本地登錄的解決方法

    這篇文章主要介紹了MySQL密碼正確卻無法本地登錄的解決方法,需要的朋友可以參考下
    2014-12-12
  • mysql 8.0.11 macos10.13安裝配置方法圖文教程

    mysql 8.0.11 macos10.13安裝配置方法圖文教程

    這篇文章主要為大家詳細(xì)介紹了mysql 8.0.11 macos10.13安裝配置方法圖文教程,mysql數(shù)據(jù)庫(kù)安裝及配置環(huán)境變量,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-07-07
  • 利用frm和ibd文件恢復(fù)mysql表數(shù)據(jù)的詳細(xì)過程

    利用frm和ibd文件恢復(fù)mysql表數(shù)據(jù)的詳細(xì)過程

    總是遇到mysql服務(wù)意外斷開之后導(dǎo)致mysql服務(wù)無法正常運(yùn)行的情況,使用Navicat工具查看能夠看到里面的庫(kù)和表,但是無法獲取數(shù)據(jù)記錄,提示數(shù)據(jù)表不存在,所以本文給大家介紹了利用frm和ibd文件恢復(fù)mysql表數(shù)據(jù)的詳細(xì)過程,需要的朋友可以參考下
    2024-04-04
  • mysql sql語句性能調(diào)優(yōu)簡(jiǎn)單實(shí)例

    mysql sql語句性能調(diào)優(yōu)簡(jiǎn)單實(shí)例

    這篇文章主要介紹了 mysql sql語句性能調(diào)優(yōu)簡(jiǎn)單實(shí)例的相關(guān)資料,需要的朋友可以參考下
    2017-06-06
  • MySQL中使用表別名與字段別名的基本教程

    MySQL中使用表別名與字段別名的基本教程

    這篇文章主要介紹了MySQL中使用表別名與字段別名的基本教程,利用SELECT語句和AS子句進(jìn)行取別名的操作,需要的朋友可以參考下
    2015-12-12
  • Linux下MySQL 5.5/5.6的修改字符集編碼為UTF8的方法

    Linux下MySQL 5.5/5.6的修改字符集編碼為UTF8的方法

    下面小編就為大家?guī)硪黄狶inux下MySQL 5.5/5.6的修改字符集編碼為UTF8的方法。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-05-05
  • 實(shí)例講解MySQL 慢查詢

    實(shí)例講解MySQL 慢查詢

    這篇文章主要介紹了MySQL 慢查詢的相關(guān)資料,幫助大家更好的理解和使用MySQL數(shù)據(jù)庫(kù),感興趣的朋友可以了解下
    2020-12-12
  • MySql分表、分庫(kù)、分片和分區(qū)知識(shí)點(diǎn)介紹

    MySql分表、分庫(kù)、分片和分區(qū)知識(shí)點(diǎn)介紹

    數(shù)據(jù)庫(kù)的數(shù)據(jù)量達(dá)到一定程度之后,為避免帶來系統(tǒng)性能上的瓶頸。需要進(jìn)行數(shù)據(jù)的處理,采用的手段是分區(qū)、分片、分庫(kù)、分表,這里就為大家介紹一下,需要的朋友可以參考下
    2020-02-02
  • MySQL日志的詳細(xì)分析實(shí)例

    MySQL日志的詳細(xì)分析實(shí)例

    MySQL日志記錄了MySQL數(shù)據(jù)庫(kù)日常操作和錯(cuò)誤信息,下面這篇文章主要給大家介紹了關(guān)于MySQL日志的詳細(xì)分析,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-04-04
  • MySQL連接查詢你真的學(xué)會(huì)了嗎?

    MySQL連接查詢你真的學(xué)會(huì)了嗎?

    日常使用數(shù)據(jù)庫(kù)查詢語句時(shí),單表查詢嘗嘗不能滿足項(xiàng)目的業(yè)務(wù)需求,在項(xiàng)目開發(fā)過程中,有很多需求都是要涉及到多表的連接查詢,這篇文章主要給大家介紹了關(guān)于MySQL連接查詢的相關(guān)資料,需要的朋友可以參考下
    2021-06-06

最新評(píng)論