数据库实验三

更新时间:2023-11-05 15:39:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

实验三

实验名称:表的完整性约束(2课时) 一、实验目的

理解并掌握关系的完整性约束,熟练使用T-SQL语句为每张表添加表约束。 二、实验环境

采用Client/Server模式,学生为客户端,是MS SQL SERVER 2000的中文客户端。登录用户名是:学号;密码为:****** 。用户名和密码以任课老师给出为准。 三、实验内容与步骤

1、 通过企业管理器修改表约束,并生成脚本。 2、 通过T-SQL语句修改表约束。

①分别为每张表建立主键约束。 ②为相关表建立外键约束。

③ 在表employee加入CHECK约束:输入的员工编号必须以E开头的5位数编号,性别只能为M/F。 ④为销售主表sales中的发票编号字段建立UNIQUE约束。 四、实验结果

1. 通过企业管理器修改表约束,并生成脚本。

为相关表建立外键约束。

①通过企业管理器为sales表建立外码,字段为:cust_id,被参照表为customer

②在表employee加入CHECK约束:输入的员工编号必须以E开头的5位数编号,性别只能为M/F。

通过企业管理器在表employee加入CHECK约束:输入的员工编号必须以E开头的5位数编号,性别只能为M/F。

首先建立check约束:

CK_employee : (emp_no between ‘E0000’ and ‘E9999’) CK_sex(sex=’M’ or sex=’F’) 实验图如下:

测试CK_employee约束

测试语句:insert into employee

(emp_no,emp_name,sex,dept,title,date_hired,salary)

values('D0003','张三','M','业务','职员',1900/01/21,43200)

测试CK_sex约束 测试语句:

insert into employee

(emp_no,emp_name,sex,dept,title,date_hired,salary) values('E0003','张三','D','业务','职员',1900/01/21,43200)

③为销售主表sales中的发票编号字段建立UNIQUE约束。

创建unique约束,如下图:

测试unique约束: 测试语句: insert into sales

(order_no,cust_id,sale_id,tot_amt,order_date,ship_date,invoice_no) values(1,'00001','00001',25343,2012-11-11,2012-11-11,'000001'); insert into sales

(order_no,cust_id,sale_id,tot_amt,order_date,ship_date,invoice_no) values(2,'00002','00001',25343,2012-11-11,2012-11-11,'000001');

本文来源:https://www.bwwdw.com/article/6a82.html

Top