国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

5.4 完整性約束命名子句

這篇具有很好參考價值的文章主要介紹了5.4 完整性約束命名子句。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

5.4 完整性約束命名子句,數(shù)據(jù)庫系統(tǒng)概論,sql,數(shù)據(jù)庫

思維導圖:

5.4 完整性約束命名子句,數(shù)據(jù)庫系統(tǒng)概論,sql,數(shù)據(jù)庫

5.4 完整性約束命名子句,數(shù)據(jù)庫系統(tǒng)概論,sql,數(shù)據(jù)庫

?

筆記:5.4 完整性約束命名子句


定義:

  • 完整性約束是在CREATE TABLE語句中定義的。
  • SQL為CREATE TABLE語句提供了CONSTRAINT子句,用于對完整性約束進行命名。
  • 命名的目的是方便增加或刪除約束。

基本結(jié)構(gòu):

CONSTRAINT <完整性約束名稱> <完整性約束條件>

其中,完整性約束條件可以是NOT NULL、UNIQUE、PRIMARY KEY、FOREIGN KEY、CHECK等。

示例:

  1. 學生登記表 Student: 要求:
  • 學號在 90000~99999 之間
  • 姓名不為空
  • 年齡小于 30
  • 性別只能是 “男” 或 “女”
CREATE TABLE Student(
    Sno NUMERIC(6) CONSTRAINT C1 CHECK (Sno BETWEEN 90000 AND 99999),
    Sname CHAR(20) CONSTRAINT C2 NOT NULL,
    Sage NUMERIC(3) CONSTRAINT C3 CHECK(Sage<30),
    Ssex CHAR(2) CONSTRAINT C4 CHECK(Ssex IN('男', '女')),
    CONSTRAINT StudentKey PRIMARY KEY(Sno)
);
  1. 教師表 TEACHER: 要求:
  • 每位教師的應發(fā)工資 (工資 Sal + 扣除項 Deduct) 不低于 3000 元。
CREATE TABLE TEACHER(
    Eno NUMERIC(4) PRIMARY KEY,
    Ename CHAR(10),
    Job CHAR(8),
    Sal NUMERIC(7,2),
    Deduct NUMERIC(7,2),
    Deptno NUMERIC(2),
    CONSTRAINT TEACHERFKey FOREIGN KEY (Deptno) REFERENCES DEPT(Deptno),
    CONSTRAINT C1 CHECK(Sal + Deduct >= 3000)
);

修改表中的完整性約束:

可以使用ALTER TABLE語句修改表中的完整性約束。

示例:

  1. 移除學生表 Student 對性別的約束:
ALTER TABLE Student DROP CONSTRAINT C4;
  1. 修改學生表 Student 的約束條件: 要求將學號的范圍從 90000~99999 改為 900000~999999,并將年齡從小于30改為小于40。
ALTER TABLE Student DROP CONSTRAINT C1;
ALTER TABLE Student ADD CONSTRAINT C1 CHECK (Sno BETWEEN 900000 AND 999999);
ALTER TABLE Student DROP CONSTRAINT C3;
ALTER TABLE Student ADD CONSTRAINT C3 CHECK (Sage < 40);

5.4 完整性約束命名子句,數(shù)據(jù)庫系統(tǒng)概論,sql,數(shù)據(jù)庫

完整性約束命名子句 - 重點、難點與易錯點總結(jié)


重點:

  1. 定義與用途:

    • 完整性約束命名子句用于為CREATE TABLE語句中的完整性約束賦予名稱,以便于后續(xù)操作(如增加、刪除)。
  2. 基本結(jié)構(gòu):

    CONSTRAINT <完整性約束名稱> <完整性約束條件>
    
  3. 完整性約束條件類型:

    • NOT NULL: 字段值不可為空
    • UNIQUE: 字段值必須唯一
    • PRIMARY KEY: 定義表的主鍵
    • FOREIGN KEY: 外鍵約束,確保字段的值在另一個表中存在
    • CHECK: 對字段值施加特定條件

難點:

  1. 外鍵約束的理解與應用:

    • 外鍵是連接兩張表的一種手段,它確保一張表中的字段值在另一張表的特定列中存在。正確實現(xiàn)外鍵約束需要對兩張表都有深入了解。
  2. 復雜的CHECK約束:

    • 創(chuàng)建復雜的條件(如,工資與扣除之和的限制)需要對邏輯表達式有很好的理解。

易錯點:

  1. 命名重復:

    • 為完整性約束命名時,要確保名稱在整個數(shù)據(jù)庫中是唯一的。重復的命名會導致錯誤。
  2. 錯誤的數(shù)據(jù)類型匹配:

    • 在應用完整性約束時,要確保約束條件與字段的數(shù)據(jù)類型相匹配。例如,不應該在字符型字段上設置數(shù)值范圍。
  3. 遺漏或誤用單引號:

    • 在CHECK約束中,特定的值(如'男''女')需要使用單引號。遺漏或誤用會導致語法錯誤。
  4. 不恰當?shù)貏h除約束:

    • 在修改表結(jié)構(gòu)時,可能需要刪除并重新添加某些約束。如果不小心刪除了錯誤的約束,可能會導致數(shù)據(jù)完整性問題。
  5. 外鍵參照的表和字段存在性:

    • 在設置外鍵約束時,必須確保引用的表和字段真實存在,否則會導致錯誤。

?5.4 完整性約束命名子句,數(shù)據(jù)庫系統(tǒng)概論,sql,數(shù)據(jù)庫文章來源地址http://www.zghlxwxcb.cn/news/detail-737277.html

到了這里,關(guān)于5.4 完整性約束命名子句的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權(quán),不承擔相關(guān)法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務器費用

相關(guān)文章

  • MySQL數(shù)據(jù)庫完整性

    數(shù)據(jù)庫的完整性是指數(shù)據(jù)的正確性和相容性。 數(shù)據(jù)的正確性是指數(shù)據(jù)符合現(xiàn)實世界語義,反映當前實際情況;數(shù)據(jù)的相容性是指數(shù)據(jù)庫在同一對象的不同關(guān)系表中的數(shù)據(jù)是符合邏輯的。 數(shù)據(jù)的完整性:為了防止數(shù)據(jù)庫中存在不和語義的數(shù)據(jù) 數(shù)據(jù)的安全性:為了保護數(shù)據(jù)庫防

    2024年02月15日
    瀏覽(28)
  • 數(shù)據(jù)庫系統(tǒng)概論—安全、完整性

    數(shù)據(jù)庫的安全性指保護數(shù)據(jù)庫以防 不合法 使用所造成的數(shù)據(jù)泄露、更改或破壞 2.1用戶身份鑒別 靜態(tài)口令鑒別 動態(tài)口令鑒別 生物鑒別特征 智能卡鑒別 2.2存取控制 自主存取控制:給用戶限權(quán)(DAC,C1級) 強制存取控制:給數(shù)據(jù)庫對象一定的密級(MAC,B1級) 2.3自主存取控制方法(授

    2024年02月03日
    瀏覽(23)
  • 二級MySQL(四)——完整性約束

    二級MySQL(四)——完整性約束

    一種規(guī)則,限制存儲的數(shù)據(jù) 保證數(shù)據(jù)庫中數(shù)據(jù)的正確,有效和完整 分類: 非空——得有值——NOT NULL 唯一——唯一的,不重復——UNIQUE 主鍵——非空且唯一——PRIMARY KEY 默認——給出默認值——DEFAULT 檢查——保證某個條件——CHECK 外鍵——兩張表的連接——FOREIGN KEY 主鍵

    2024年02月11日
    瀏覽(21)
  • 實驗8 數(shù)據(jù)庫完整性、安全設計

    實驗8 數(shù)據(jù)庫完整性、安全設計

    第1關(guān) 執(zhí)行 CREATE USER 創(chuàng)建以2022100904為用戶名的用戶,同時設置其密碼為root1234 任務描述 執(zhí)行 CREATE USER 創(chuàng)建以 2022100904 為用戶名的用戶,同時設置其密碼為 root1234 相關(guān)知識 創(chuàng)建用戶的語法為如下: 第2關(guān) 給予創(chuàng)建的用戶2022100904在mydata數(shù)據(jù)庫中授予\\\"J\\\" 表 SELECT 權(quán)限 任務描述

    2024年02月09日
    瀏覽(49)
  • 【SQL】實驗十 數(shù)據(jù)庫完整性實驗

    一、實驗目的 1、 熟悉通過SQL對數(shù)據(jù)進行完整性控制。熟練掌握數(shù)據(jù)庫 三類完整性約束 (實體完整性、用戶自定義完整性、參照完整性) 2、了解SQL SERVER 的違反完整性處理措施。 3、了解主鍵(PRIMARY KEY)約束 、 外鍵(FOREIGN KEY)約束 、 唯一性(UNIQUE)約束 、 檢查(CHE

    2024年02月01日
    瀏覽(29)
  • 實驗四 數(shù)據(jù)庫安全性和完整性

    實驗四 數(shù)據(jù)庫安全性和完整性

    一.實驗目的 1.加深對數(shù)據(jù)庫安全性和完整性理解; 2.學會授權(quán)與回收; 4.理解并體會數(shù)據(jù)庫實體完整性、參照完整性、用戶定義的完整性約束條件的作用。 二. 實驗內(nèi)容 對已建好的各表和用戶進行權(quán)限的授權(quán)和回收操作,進行完操作之后檢查授權(quán)過的用戶是否真正具有授予

    2024年02月08日
    瀏覽(23)
  • 【MySQL】數(shù)據(jù)庫完整性和安全性

    【MySQL】數(shù)據(jù)庫完整性和安全性

    目錄 ? 一、完整性 1.概念 2.sql語言支持的兩種約束 ? ??2.1靜態(tài)約束 ? ? ? ? ?撤銷追加約束 ? ? ? ? ?斷言 ? ??2.3動態(tài)約束 ? ? ? ? ??觸發(fā)器 二、安全性 用DBMS對數(shù)據(jù)庫實現(xiàn)的兩個特性? 1.概念 指dbms保證的db的一種特性,在任何情況下的正確性、有效性、一致性 原理圖

    2023年04月24日
    瀏覽(30)
  • 深入理解數(shù)據(jù)庫事務:確保數(shù)據(jù)完整性與一致性

    在現(xiàn)代信息系統(tǒng)中,數(shù)據(jù)是至關(guān)重要的資產(chǎn)之一。作為一名后端開發(fā)人員,與數(shù)據(jù)庫的交道必不可少,為了確保數(shù)據(jù)的完整性、一致性和可靠性,數(shù)據(jù)庫引入了事務的概念。本次將帶您深入了解數(shù)據(jù)庫事務的重要性、特性以及如何在應用程序中正確地使用事務來維護數(shù)據(jù)的穩(wěn)

    2024年02月12日
    瀏覽(31)
  • 數(shù)據(jù)庫系統(tǒng)頭歌實驗八 數(shù)據(jù)庫完整性、安全設計

    數(shù)據(jù)庫系統(tǒng)頭歌實驗八 數(shù)據(jù)庫完整性、安全設計

    第1關(guān):執(zhí)行 CREATE USER 創(chuàng)建以2022100904為用戶名的用戶,同時設置其密碼為root1234 第2關(guān):給予創(chuàng)建的用戶2022100904在mydata數(shù)據(jù)庫中授予\\\"J\\\" 表 SELECT 權(quán)限(注意創(chuàng)建權(quán)限時的用戶名為\\\'用戶名\\\'@\\\'localhost\\\'),不允許轉(zhuǎn)授此權(quán)限給其它用戶。 第3關(guān):給予創(chuàng)建的用戶2022100904、2022100908在

    2024年02月05日
    瀏覽(51)
  • Mysql列的完整性約束最詳細教程之一——詳解

    Mysql列的完整性約束最詳細教程之一——詳解

    目錄 前言 一、主鍵約束 1.設置字段的主鍵約束(PRIMARY KEY,PK) 1.單字段主鍵 2.多字段主鍵 二、設置表字段的外鍵約束 1.簡介 2.語句格式 三、設置表字段的非空約束(NOT NULL, NK) 1.簡介 2.語句格式 四、設置字段值自動增加(AUTO_INCREMENT) ?1.語句格式 ? 2.實際應用 五、設置

    2024年02月04日
    瀏覽(28)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包