数据控制—完整性约束

/*
    数据库实验七
    2017/05/18

具体操作内容:
创建以下两个关系模式,并分别插入相应的数据。
    职工(职工号,姓名,年龄,职务,工资,部门号)其中职工号为主码;
    部门(部门号,名称,经理名,地址,电话号码),其中部门号为主码;

(1)使用SQL语言定义这两个关系模式,并完成以下完整性约束条件的定义;(SQL语句脚本;及结果截图)
    (a)定义每个模式的主码;
    (b)定义参照完整性;
    (c)部门名称不能为空;且不能重复,定义约束名为UK_dName;
    (d)职工的姓名不能为空;
    (e)职工的工资不能为空,且不能小于800;
    (f)定义职工的年龄不能小于18岁,并且不能超过60岁;

(2)使用SQL语言分别向每个表中进行至少7条插入操作,验证上面的各种约束条件;(SQL语句既要截图,也要sql脚本文件)

(3)将职工的年龄改为不能小于16岁,并且不能大于65岁;

(4)定义一个表tbl_Emp_Log(eNO, eSalary, Username, ModifyDate);在职工表上定义修改和插入数据的触发器。

*/

/*1.数据库的创建*/

CREATE DATABASE [exp7]
 ON  PRIMARY 
(   NAME = N'exp7', 
    FILENAME = N'D:\SQLDatabase\exp7.mdf' , 
    SIZE = 5120KB , 
    MAXSIZE = 10240KB , 
    FILEGROWTH = 1024KB )
 LOG ON 
(   NAME = N'exp7_log', 
    FILENAME = N'D:\SQLDatabase\exp7_log.ldf' , 
    SIZE = 1024KB , 
    MAXSIZE = 5120KB , 
    FILEGROWTH = 1024KB )
GO

USE [exp7]
GO

--2.表的创建
/*部门(部门号,名称,经理名,地址,电话号码)*/
/*Part 部门表的创建*/
CREATE TABLE Part(
    PartNo char(10) NOT NULL primary key,--部门号
    PName char(20) NOT NULL CONSTRAINT UK_dName unique,--部门名称
    PmangerName char(8) ,--经理名
    Paddress char(50) ,--地址
    Ptelephone char(20) ,--电话号码
);

/*职工(职工号,姓名,年龄,职务,工资,部门号)*/
/*Worker 职工表的创建*/
CREATE TABLE Worker(
    WorkerNo char(8) NOT NULL primary key,--职工编号
    WorkerName char(8) NOT NULL,--职工姓名
    Wage int NOT NULL CONSTRAINT WAgeCK check(Wage>=18 AND Wage<=60),--职工年龄
    Wjob char(20) ,--职工职务
    Wpay int NOT 
  • 1
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值