实验五数据库完整性 课外练习题答案

/*

【课外实验】

 

    一、建立如下关系表

 

         工程表(工程号,工程名,开工日期,竣工日期,状态,城市,项目经理号)

TProject(Pid,PName,PStartDate,PEndDate,PStatus,PCity,Wid)

         职工表(职工号,姓名,年龄,籍贯,职称,基本工资)

TWorker(Wid,WName,WAge,WHome,WRank,WBaseSal)

         岗位表(岗位号,岗位名)

TJob(Jid,JName)

         工资表(序号,职工号,月份,绩效工资,奖金)

TSalary(Sid,Wid,SMonth,SPerformanceSal,bonuses)

    要求:

1、籍贯只记城市。

            2、正确确定四个表的主码

            3、通过外码,正确把握关系间的联系

            4、工程与职工具有多对多的联系,建立一个工程_职工表(工程号,职工号,岗位号,入职时间,状态) 

            5、工程表的状态有两种状态(0:未完工,1:已完工)

               工程_职工表的状态有两种(0:在职,2:已离职) 

            6、工资表的月份只能取1-12,奖金只能取100的倍数 

            7、职工表的年龄取值范围是18-60;职称取值为:初级、中级、高级;

要求所有人员基本工资不低于800,高级人员的基本工资不低于4500.

*/

 

/*

职工表(职工号,姓名,年龄,籍贯,职称,基本工资)

TWorker(Wid,WName,WAge,WHome,WRank,WBaseSal)

*/

 

go

/* 保证插入到数据库中的基本工资满足:所有人员基本工资不低于800,高级人员的基本工资不低于4500. */

 

/*

工程表(工程号,工程名,开工日期,竣工日期,状态,城市,项目经理号)

TProject(Pid,PName,PStartDate,PEndDate,PStatus,PCity,Wid)

*/

 

go

/* 确定日期合理性 */

 

/*

岗位表(岗位号,岗位名)

TJob(Jid,JName)

*/

 

/*

工资表(序号,职工号,月份,绩效工资,奖金)

TSalary(Sid,Wid,SMonth,SPerformanceSal,Sbonuses)

*/

 

/*

工程_职工表(工程号,职工号,岗位号,入职时间,状态) 

TProject_Worker(Pid,Wid,Jid,EntryTime,PWStatus)

*/

 

 

/*      

    二、创建视图工资视图(序号,职工号,月份,基本工资,绩效工资,奖金,[五险一金],应发,个人所得税,实发)

*/

 

/*

    三、是否能删除工程表的工程

*/

 

 

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
一、实验目的 使学生加深对数据库安全性和完整性的理解。并掌握SQL Server中有关用户、角色及操作权限的管理方法。熟悉通过SQL语句对数据进行完整性控制。 二、实验内容和要求   数据库的安全性实验,在SQL Server企业管理器中,设置SQL Server的安全认证模式,实现对SQL Server的用户和角色管理,设置和管理数据操作权限。   具体内容如下:   设置SQL Server的安全认证模式(Windows或SQL Server和Windows(S)认证模式)。   登录的管理 创建一个登录用户   数据库用户的管理 登陆用户只有成为数据库用户(Database User)后才能访问数据库。每个数据库的用户信息都存放在系统表Sysusers中,通过查看Sysusers表可以看到该数据库所有用户的情况。SQL Server的数据库中都有两个默认用户:dbo(数据库拥有者用户)和(dba)。通过系统存储过程或企业管理器可以创建新的数据库用户。   角色的管理 创建一个角色,使创建的用户成为该角色的成员,并授予一定的操作权限。   在学生表中定义主键、外键约束。   在课程表的“课程名”字段上定义唯一约束。   在选课表的“成绩”字段上定义check约束,使之必须大于等于0且小于等于100.“课程号”字段只能输入数字字符。   定义规则,并绑定到读者表的“性别”字段,使之只能取“男、女”值。   在学生表中增加出生日期字段。定义缺省,并绑定到借阅表的“借阅日期”上,使之只能取当前日期。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值