精华内容
下载资源
问答
  • 和完整性约束 表的定义以及完整性约束...主码(主关键字,PRIMARY KEY__PK),在码选择一个代表,定义为主码 主码的特点: 1、主码value不得为空 2、构成主码的每个字段不得重复 主属性是构成码属性 ...

    表和完整性约束

    • 表的定义以及完整性约束的定义
      • 定义列
      • 定义计算列
      • 定义主关键字(实体完整性约束)
      • 定义外部关键字(参照完整性约束)
        • 删除约束 、更新约束
      • 定义普通约束(用户定义完整性)
      • 表级约束

    主码

    主码(主关键字,PRIMARY KEY__PK),在码中选择的一个代表,被定义为主码
    主码的特点:
    1、主码value不得为空
    2、构成主码的每个字段不得重复
    主属性是构成码的属性
    主码属性是构成主码的属性

    外码

    外码(Foreign key__FK),设有关系表R和W,R中的某个字段FK与W中的主码PK对应,则FK成为W的外码。
    外码定义了两个表之间的约束关系,W为主表(被参照表),R为从表(参照表)。

    范式描述

    1.关键字
    2.语法概念
    3.元语言符号:[] {} |
    4.() 实际符号

    表的定义

    • 定义表时,约束条件(完整性约束)分为两种:
      • 对某个字段的约束,成为字段的完整性约束
      • 对整个表的约束,被称为整个表的完整性约束

    字段的完整性约束也可以定义成表的完整性约束

    • 一个表由若干列构成,在SQL Server中可以
      • 定义实列(简称列,column_definiton)
      • 定义虚列(即计算列,computed_column_definition)

    列的定义

    UNIQUE :唯一
    若一个字段定义了UNIQUE字段,该字段值不允许重复,但可以为多个null

    CHECK
    如:CHECK(grade>=0 AND grade<=100)

    DEFAULT
    设置默认值

    ON DELETE CASCADE / ON UPDATE CASCADE
    当被参照记录即被参照表被删除/修改时级联删除参照表即从表的记录。

    修改表结构

    • 修改表结构
      • 修改列定义
      • 增加新列(含计算列)
      • 增加表级约束
      • 删除列
      • 删除约束

    ALTER TABLE

    • 增加字段
    • 删除字段
    • 修改字段类型
    • 增加约束
    • 删除约束

    课程作业:

    USE 学校管理
    GO
    CREATE SCHEMA 学校
    GO
    CREATE TABLE 学校.院系(
    编号 INT PRIMARY KEY,
    名称 VARCHAR(20) NOT NULL UNIQUE,
    负责人 VARCHAR(10),
    办公地点 VARCHAR(20)
    )
    GO
    CREATE TABLE 学校.学生(
    学号 VARCHAR(8) PRIMARY KEY,
    姓名 VARCHAR(10) NOT NULL,
    院系 INT FOREIGN KEY REFERENCES 学校.院系(编号),
    性别 VARCHAR(2) CHECK (性别 IN ('男' ,'女') ),
    生源 VARCHAR(6),
    状态 VARCHAR(4) CHECK (状态 IN ('正常','留级','休学','退学') )
    )
    GO
    CREATE TABLE 学校.教师(
    教师编号 VARCHAR(8) PRIMARY KEY,
    姓名 VARCHAR(10) NOT NULL,
    性别 VARCHAR(2) CHECK(性别 IN ('男','女')),
    院系 INT FOREIGN KEY REFERENCES 学校.院系(编号),
    专业 VARCHAR(10),
    职称	VARCHAR(6) CHECK(职称 IN('教授','副教授','讲师','助教'))
    )
    GO
    CREATE TABLE 学校.课程(
    课程编号 VARCHAR(8) PRIMARY KEY,
    课程名称 VARCHAR(20) NOT NULL,
    责任教师 VARCHAR(8) FOREIGN KEY REFERENCES 学校.教师(教师编号),
    学时 INT NOT NULL,
    课程性质 VARCHAR(10) CHECK(课程性质 IN ('公共基础','专业基础','专业选修','任意选修'))
    )
    GO
    CREATE TABLE 学校.选课(
    学号 VARCHAR(8) FOREIGN KEY REFERENCES 学校.学生(学号),
    课程编号 VARCHAR(8) FOREIGN KEY REFERENCES 学校.课程(课程编号),
    考试成绩 INT CHECK(考试成绩>=0 AND 考试成绩<=100) DEFAULT NULL
    )
    
    ALTER TABLE 学校.学生
    ADD 平均成绩 INT DEFAULT NULL
    
    ALTER TABLE 学校.课程
    DROP COLUMN 学时
    
    ALTER TABLE 学校.课程
    ADD 学时 INT NOT NULL CHECK(学时%8=0)
    
    ALTER TABLE 学校.院系
    ALTER COLUMN 名称 VARCHAR(30)
    
    ALTER TABLE 学校.教师
    ADD 工资 NUMERIC(7,2)
    
    展开全文
  • alter table 表名 add CONSTRAINT 约束名 foreign key (外码字段名) references 被参照表的表名(被参照主码名); 如果添加约束时候失败,可能原因是:外码字段值 与 被参照主码的值 不一致。 解决办法:1...

    1. 删除表级约束

    alter table 表名 drop foreign key 外码名;

    2. 添加表级约束

    alter table 表名 add CONSTRAINT 约束名 foreign key (外码字段名) references 被参照表的表名(被参照主码名);

    如果添加约束的时候失败,可能的原因是:外码字段的值   与   被参照主码的值    不一致。

    解决办法:1. 让有冲突的值一致    2. 清空两张表中任意一个表。

    展开全文
  • **参照完整性:**是指参照关系每个元素的外码要么为空(NULL),要么等于被参照关系某个元素的主码; 例子: (2) 参照完整性规则:若属性(或属性组) F 是基本关系 R 的外码,它与基本关系 S 的主码 K s 相对应(基本...
  • Excel新增工具集

    2011-12-20 09:30:27
    10、检查两列同行两单元格是否相同:由ID号意义相同的从表向表合并列记录时,往往先将从表记录粘贴到表中,然后删除表中的ID等与表重复的列记录,本命令用来比较两列同行单元格(ID号)是否相同。 (九)工作...
  • 从线性表的第一个元素开始,依次将线性表中的元素与查找的元素相比较,若相等则表示查找成功;若线性表中所有的元素都与查找元素进行了比较但都不相等,则表示查找失败。 例如,在一维数组[21,46,24,99,57,...
  • 在系统的主窗口单击鼠标右键可以弹出设置菜单。 时间的录入既可完全录入,也可只录入数值.如:1969年1月6日 既可录入“1969年1月6日”, 也可录入“19690106”或“1969-1-6”。 本系统可以同时使用多套,只要把...
  • 【选区背景】 默认启动智能着色方式,此功能会清除一部分背景颜色,但对工作表中的条件格式会作完全保留,丝毫没有影响。最大的特点是支持屏幕行列捲轴的操作而不影响显示。 【选区背景选择】 进行着色功能切换,...
  • 【选区背景】 默认启动智能着色方式,此功能会清除一部分背景颜色,但对工作表中的条件格式会作完全保留,丝毫没有影响。最大的特点是支持屏幕行列捲轴的操作而不影响显示。 【选区背景选择】 进行着色功能切换,...
  • 【选区背景】 默认启动智能着色方式,此功能会清除一部分背景颜色,但对工作表中的条件格式会作完全保留,丝毫没有影响。最大的特点是支持屏幕行列捲轴的操作而不影响显示。 【选区背景选择】 进行着色功能切换,...
  • EXCEL集成工具箱V6.0

    2010-09-11 01:44:37
    完 美 背 景 着 色 【选区背景】 默认启动智能着色方式,此功能会清除一部分背景颜色,但对工作表中的条件格式会作完全保留,丝毫没有影响。最大的特点是支持屏幕行列捲轴的操作而不影响显示。 【选区背景选择】 ...
  • 完 美 背 景 着 色 【选区背景】 默认启动智能着色方式,此功能会清除一部分背景颜色,但对工作表中的条件格式会作完全保留,丝毫没有影响。最大的特点是支持屏幕行列捲轴的操作而不影响显示。 【选区背景选择】 ...
  • 1246.2.3 在多个字段上排序数据 1256.2.4 删除表排序次序和解冻列 1256.3 查找表中的匹配记录 1266.4 自动地替换匹配的字段值 1276.5 筛选表数据 1286.5.1 按选定内容筛选 1286.5.2 按窗体筛选 1306.5.3 高级筛选和...
  • 1256.2.4 删除表排序次序和解冻列 1256.3 查找表中的匹配记录 1266.4 自动地替换匹配的字段值 1276.5 筛选表数据 1286.5.1 按选定内容筛选 1286.5.2 按窗体筛选 1306.5.3 高级筛选和排序 1326.5.4 添加一个多字段...
  • 1256.2.4 删除表排序次序和解冻列 1256.3 查找表中的匹配记录 1266.4 自动地替换匹配的字段值 1276.5 筛选表数据 1286.5.1 按选定内容筛选 1286.5.2 按窗体筛选 1306.5.3 高级筛选和排序 1326.5.4 添加一个多字段...
  • 1256.2.4 删除表排序次序和解冻列 1256.3 查找表中的匹配记录 1266.4 自动地替换匹配的字段值 1276.5 筛选表数据 1286.5.1 按选定内容筛选 1286.5.2 按窗体筛选 1306.5.3 高级筛选和排序 1326.5.4 添加一个多字段...
  • 5.3 用SQL 从表中选择数据 64 5.4 select 、from 、where和order by 67 5.5 逻辑和值 69 5.5.1 单值测试 70 5.5.2 值列表简单测试 75 5.5.3 组合逻辑 77 5.6 where 另一个用途:子查询 78 5.6.1 从子...
  • 日期类型 date 7字节 用于存储表中的日期和时间数据,取值范围是公元前4712年1月1日至公元9999年12月31日,7个字节分别表示世纪、年、月、日、时、分和秒 二进制数据类型 row 1~2000字节 可变长二进制数据,在具体...
  • 解决这个问题的最好方式是引入腾讯wcdb中的c++的repair模块修复损坏数据库,构建新库,UI层做友好提示(类似于QQ更新之后跳出的加载数据页面),工作量比较大,但实际效果比较好,修复数据有利于用户留存;...
  • php高级开发教程说明

    2008-11-27 11:39:22
    的底部是诸如一行中的词序或是一个词中的字母顺序的一些东西。 逻辑分析过程将提取这些形式信息,然后按顺序遍历此树,并设法将信息译成有意义的结 果,这是一种语法上的翻译(这个句子有什么样的结构?),还是一种...
  • Radmin自动登录器v3.0

    2018-01-06 16:04:23
    单击菜单、帮助中的“V2.0转V3.0记录文件”菜单项,可以将RadminM V2.0的记录文件转换为RadminM V3.0的记录文件。执行转换之前,请先备份好RadminM.txt。新生成的文件可能覆盖RadminM.txt。 (2)、v1.5的RadminM...
  • 单击菜单、帮助中的“V2.0转V3.0记录文件”菜单项,可以将RadminM V2.0的记录文件转换为RadminM V3.0的记录文件。执行转换之前,请先备份好RadminM.txt。新生成的文件可能覆盖RadminM.txt。 (2)、v1.5的RadminM...
  • windows实用dos命令大全

    2010-12-10 21:27:35
    根目录下被删除的文件或子目录及磁盘系统扇区(包括FAT、根目录、BOOT扇区及硬盘分区)受损时,也可以用UNformAT来抢救。  (1)选用/L参数列出找到子目录名称、文件名称、大孝日期等信息,但不会真做...
  • 使用前请将Radmin Viewer 3.5的Radmin.exe文件拷贝为该目录中的RadminM.exe,其它Radmin Viewer 3.x版本也可以,中文版、英文版均可; 请设置防火墙允许RadminM.exe和RadminM2.exe(仅扫描功能用)访问网络; 若要...
  • 我想,虽然第二版有着这样那样的变化,但有一点没有变,那就是本书试图将我在编写自己操作系统的过程中的经验尽可能地告诉读者,同时尽可能将我当初的思路和编码过程呈现出来。很可能读者比我更聪明,有更好的解决...
  • 我想,虽然第二版有着这样那样的变化,但有一点没有变,那就是本书试图将我在编写自己操作系统的过程中的经验尽可能地告诉读者,同时尽可能将我当初的思路和编码过程呈现出来。很可能读者比我更聪明,有更好的解决...
  • 精易模块[源码] V5.15

    2015-03-21 22:03:37
    5、新增“文本_是否为双字节字符”与OPenGL支持库->文字轮廓 中的 是否为双字节字符功能相同。 6、新增“文本_是否为字母”,判断指定文本是否为字母。 7、新增“目录_取桌面目录”获取当前系统桌面目录。 MD5:...

空空如也

空空如也

1 2
收藏数 26
精华内容 10
热门标签
关键字:

删除被参照表中的主码