T-SQL内部测试机试题

《MySchool数据库设计优化》内部测试-机试试卷

某中心ACCP的某班毕业后,学员纷纷找到了满意的工作。到了年底调薪的阶段了,创建一个存储过程,对这批学员进行按级别调薪。数据库名为Wages,保存学员就业信息表的结构WageInfo,见表1;保存学员信息的表为StudentInfo,见表2。

表 1:学员就业信息表:WagesInfo 字段名称 CompanyID CompanyName Poste 字段数据类型 int varchar(50) varchar(50) 字段具体说明 就业单位编号,表的主键,初始值为1,自增 就业单位名称,非空 岗位名称,非空 表 2:学员信息表:StudentInfo 字段名称 ID Name CompanyID PosteDate Wage 字段数据类型 int varChar(10) int datetime int 字段具体说明 学号,表的主键,初始值为1,自增 学员姓名,非空 就业单位编号,外键,可空 就业日期,可空 工资,可空 要求:

按下面的要求,编写T-SQL语句,对学员就业和目前的工资进行分析。 1)创建数据库Wages。如果数据库Wages已存在,那么,先删除再创建。

2)根据表1的表结构,创建WagesInfo表。如果表WagesInfo已存在,则先删除再创建该表。

3)根据表1的表结构,创建StudentInfo表。如果表StudentInfo已存在,则先删除再创建该表。

4)添加WagesInfo表和StudentInfo表的主外键约束。

5)在StudentInfo表和WagesInfo表中插入至少5条测试数据。 6)在StudentInfo表PosteDate列上创建非聚集索引。 7)创建视图,并执行查询获得已经就业的学员记录。 8)创建视图,并执行查询获得目前尚未就业的学员记录。

9)创建并执行存储过程,查询是否有一半程序员的工资在3000、4000或6000元之上。如果不到分别每次给每个程序员加薪50元,至之一半程序员的工资达到3000,4000或6000元。

10)创建并执行存储过程,查询程序员平均工资在3500元,如果不到则每个程序员每次加50元,至到所有程序员平均工资达到3500元。

11)保存SQL代码,分离数据库,生成压缩包,提交符合命名规范的练习答案。

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4