5.4 完整性约束命名子句

这篇具有很好参考价值的文章主要介绍了5.4 完整性约束命名子句。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

5.4 完整性约束命名子句,数据库系统概论,sql,数据库

思维导图:

5.4 完整性约束命名子句,数据库系统概论,sql,数据库

5.4 完整性约束命名子句,数据库系统概论,sql,数据库

 

笔记:5.4 完整性约束命名子句


定义:

  • 完整性约束是在CREATE TABLE语句中定义的。
  • SQL为CREATE TABLE语句提供了CONSTRAINT子句,用于对完整性约束进行命名。
  • 命名的目的是方便增加或删除约束。

基本结构:

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: 要求:
  • 每位教师的应发工资 (工资 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 完整性约束命名子句,数据库系统概论,sql,数据库

完整性约束命名子句 - 重点、难点与易错点总结


重点:

  1. 定义与用途:

    • 完整性约束命名子句用于为CREATE TABLE语句中的完整性约束赋予名称,以便于后续操作(如增加、删除)。
  2. 基本结构:

    CONSTRAINT <完整性约束名称> <完整性约束条件>
    
  3. 完整性约束条件类型:

    • NOT NULL: 字段值不可为空
    • UNIQUE: 字段值必须唯一
    • PRIMARY KEY: 定义表的主键
    • FOREIGN KEY: 外键约束,确保字段的值在另一个表中存在
    • CHECK: 对字段值施加特定条件

难点:

  1. 外键约束的理解与应用:

    • 外键是连接两张表的一种手段,它确保一张表中的字段值在另一张表的特定列中存在。正确实现外键约束需要对两张表都有深入了解。
  2. 复杂的CHECK约束:

    • 创建复杂的条件(如,工资与扣除之和的限制)需要对逻辑表达式有很好的理解。

易错点:

  1. 命名重复:

    • 为完整性约束命名时,要确保名称在整个数据库中是唯一的。重复的命名会导致错误。
  2. 错误的数据类型匹配:

    • 在应用完整性约束时,要确保约束条件与字段的数据类型相匹配。例如,不应该在字符型字段上设置数值范围。
  3. 遗漏或误用单引号:

    • 在CHECK约束中,特定的值(如'男''女')需要使用单引号。遗漏或误用会导致语法错误。
  4. 不恰当地删除约束:

    • 在修改表结构时,可能需要删除并重新添加某些约束。如果不小心删除了错误的约束,可能会导致数据完整性问题。
  5. 外键参照的表和字段存在性:

    • 在设置外键约束时,必须确保引用的表和字段真实存在,否则会导致错误。

 5.4 完整性约束命名子句,数据库系统概论,sql,数据库文章来源地址https://www.toymoban.com/news/detail-737277.html

到了这里,关于5.4 完整性约束命名子句的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • MySQL数据库完整性

    数据库的完整性是指数据的正确性和相容性。 数据的正确性是指数据符合现实世界语义,反映当前实际情况;数据的相容性是指数据库在同一对象的不同关系表中的数据是符合逻辑的。 数据的完整性:为了防止数据库中存在不和语义的数据 数据的安全性:为了保护数据库防

    2024年02月15日
    浏览(39)
  • 数据库系统概论—安全、完整性

    数据库的安全性指保护数据库以防 不合法 使用所造成的数据泄露、更改或破坏 2.1用户身份鉴别 静态口令鉴别 动态口令鉴别 生物鉴别特征 智能卡鉴别 2.2存取控制 自主存取控制:给用户限权(DAC,C1级) 强制存取控制:给数据库对象一定的密级(MAC,B1级) 2.3自主存取控制方法(授

    2024年02月03日
    浏览(47)
  • 二级MySQL(四)——完整性约束

    一种规则,限制存储的数据 保证数据库中数据的正确,有效和完整 分类: 非空——得有值——NOT NULL 唯一——唯一的,不重复——UNIQUE 主键——非空且唯一——PRIMARY KEY 默认——给出默认值——DEFAULT 检查——保证某个条件——CHECK 外键——两张表的连接——FOREIGN KEY 主键

    2024年02月11日
    浏览(41)
  • 实验8 数据库完整性、安全设计

    第1关 执行 CREATE USER 创建以2022100904为用户名的用户,同时设置其密码为root1234 任务描述 执行 CREATE USER 创建以 2022100904 为用户名的用户,同时设置其密码为 root1234 相关知识 创建用户的语法为如下: 第2关 给予创建的用户2022100904在mydata数据库中授予\\\"J\\\" 表 SELECT 权限 任务描述

    2024年02月09日
    浏览(49)
  • 【SQL】实验十 数据库完整性实验

    一、实验目的 1、 熟悉通过SQL对数据进行完整性控制。熟练掌握数据库 三类完整性约束 (实体完整性、用户自定义完整性、参照完整性) 2、了解SQL SERVER 的违反完整性处理措施。 3、了解主键(PRIMARY KEY)约束 、 外键(FOREIGN KEY)约束 、 唯一性(UNIQUE)约束 、 检查(CHE

    2024年02月01日
    浏览(68)
  • 实验四 数据库安全性和完整性

    一.实验目的 1.加深对数据库安全性和完整性理解; 2.学会授权与回收; 4.理解并体会数据库实体完整性、参照完整性、用户定义的完整性约束条件的作用。 二. 实验内容 对已建好的各表和用户进行权限的授权和回收操作,进行完操作之后检查授权过的用户是否真正具有授予

    2024年02月08日
    浏览(42)
  • 【MySQL】数据库完整性和安全性

    目录   一、完整性 1.概念 2.sql语言支持的两种约束     2.1静态约束          撤销追加约束          断言     2.3动态约束           触发器 二、安全性 用DBMS对数据库实现的两个特性  1.概念 指dbms保证的db的一种特性,在任何情况下的正确性、有效性、一致性 原理图

    2023年04月24日
    浏览(82)
  • 深入理解数据库事务:确保数据完整性与一致性

    在现代信息系统中,数据是至关重要的资产之一。作为一名后端开发人员,与数据库的交道必不可少,为了确保数据的完整性、一致性和可靠性,数据库引入了事务的概念。本次将带您深入了解数据库事务的重要性、特性以及如何在应用程序中正确地使用事务来维护数据的稳

    2024年02月12日
    浏览(42)
  • 数据库系统头歌实验八 数据库完整性、安全设计

    第1关:执行 CREATE USER 创建以2022100904为用户名的用户,同时设置其密码为root1234 第2关:给予创建的用户2022100904在mydata数据库中授予\\\"J\\\" 表 SELECT 权限(注意创建权限时的用户名为\\\'用户名\\\'@\\\'localhost\\\'),不允许转授此权限给其它用户。 第3关:给予创建的用户2022100904、2022100908在

    2024年02月05日
    浏览(98)
  • Mysql列的完整性约束最详细教程之一——详解

    目录 前言 一、主键约束 1.设置字段的主键约束(PRIMARY KEY,PK) 1.单字段主键 2.多字段主键 二、设置表字段的外键约束 1.简介 2.语句格式 三、设置表字段的非空约束(NOT NULL, NK) 1.简介 2.语句格式 四、设置字段值自动增加(AUTO_INCREMENT)  1.语句格式   2.实际应用 五、设置

    2024年02月04日
    浏览(39)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包