SQL server 2005 上机练习
- 格式:doc
- 大小:3.11 MB
- 文档页数:26
对以下题目请选择正确答案(每道题目有一个或多个正确的答案)。
针对每一道题目,所有答案都选对,则该题得分,否则不得分。
1. 数据库设计的最终目标不包括()。
(选择两项)BDA. 高效B. 满足范式要求C. 安全D. 表现设计者的技术实力E. 易用F. 便于将来扩展功能和容量2. 有关数据冗余说法错误的是()。
(选择一项)CA. 数据库中,数据存在副本的现象,就是数据冗余。
B. 通过分类存储,可以有效减少数据冗余,但是会增加数据查找的复杂性。
C. 在数据库设计阶段,一定要尽最大可能避免数据冗余,最好做到无数据冗余。
D. 数据冗余通常是由于数据库设计引起的。
3. 用于表示数据库实体之间的关系图是()。
AA. 实体关系图B. 数据模型图C. 实体分类图D. 以上都不是4. 假定有一个用户表,表中包含字段:userid (int)、username (varchar)、password(varchar)等,该表需要设置主键,以下说法正确的是()。
(选择两项)ABA. 如果不能有同时重复的username和password,那么username和password可以组合在一起作为主键。
B. 此表设计主键时,根据选择主键的最小性原则,最好采用userid作为主键。
C. 此表设计主键时,根据选择主键的最小性原则,最好采用username和password作为组合键。
D. 如果采用userid作为主键,那么在userid列输入的数值,允许为空。
5. 语句alter table userinfo add constraint uq_userid unique(userid)执行成功后,为userinfo表的()字段添加了()约束。
BA. userid 主键B. userid 唯一C. uq_userid 外键D. uq_userid 检查6. 运行如下T-SQL,结果返回包含()的记录集。
Acreate table scores(scoreid int identity(1,2),score numeric(4,2) not null,courseid int)insert int scores values(90.5,null);insert into scores values(78.234,2);select * from scores;A. 1 90.50 NULL3 78.23 2B. 1 78.23 2C. 1 90.50D. 1 90.502 78.23 27. 关于子查询,以下说法正确的是()。
SQL Server 2005实验报告学院: XXXX专业班级: XXXXXX姓号: XX学号: XXXXX实验一 SQL Server 2005环境1.目的与要求(1)掌握SQL Server Management对象资源管理器的使用方法;(2)掌握SQL Server Management查询分析器的使用方法;(3)对数据库及其对象有一个基本了解。
2.实验准备(1)了解SQL Server 2005各种版本安装的软、硬件要求;(2)了解SQL Server 2005支持的身份验证模式;(3)对数据库、表及其他数据库对象有一个基本了解。
3.实验内容(1)SQL Server 2005的安装。
检查软、硬件配置是否达到SQL Server 2005的安装要求,参照第一章内容安装SQL Server 2005,熟悉SQL Server 2005的安装方法。
(2)对象资源管理器的使用。
①进入SQL Server Management Studio。
单击“开始”,选择“程序”,选择“Microsoft SQL Server 2005”,单击“SQL Server Management Studio”,打开“连接到服务器”窗口如图所示在打开的“连接到服务器”窗口中使用系统默认设置连接服务器,单击“连接”按钮,系统显示“SQL Server Management Studio”窗口。
在 SQL Server Management Studio窗口中,左边是对象资源管理器,它以目录树的形式组织对象。
右边死操作界面,如“查询分析器”窗口,“表设计器”窗口等。
②了解系统数据库和数据库的对象。
在SQL Server 2005安装后,系统生成了4个数据库:master、model、msdb和tempdb。
在对象资源管理器中单击系统数据库,右边显示4个数据库,如图所示选择系统数据库master,观察SQL Server 2005对象资源管理器中数据库对象的组织方式。
Sql server 2005程序设计与管理基础同步实训教程思考与练习答案第一章一、填空题1.身份验证权限验证2. sa3. C/S4. 关系第二章一、填空题1. 数据文件事务日志文件2. 主文件组用户自定义文件组3. master model tempdb msdb4. DA TABASE5. ALTER6. DROP二、选择题1. B2. D3.C4. B5. C6. A7. C8. B9. A10.C 11. A四、实践操作题1.—创建员工管理数据库CREATE DATABASE employee_manageON PRIMARY(NAME=employee_data,FILENAME='e:\employ\employee_data.mdf',SIZE=4MB,FILEGROWTH=1MB)LOG ON(NAME=employee_log,FILENAME='e:\employ\employee_log.ldf',SIZE=1MB,FILEGROWTH=15%)GO2. --修改员工管理数据库ALTER DATABASE employee_manageADD FILE(NAME=employee_data2,FILENAME='e:\employ\employee_manag2.ndf', SIZE=2MB,FILEGROWTH=10%,MAXSIZE=50MB)GO第三章一、填空题1. TABLE2. IDENTITY3. sp_help4. 单用户single user5. 1bit 0,1,null二、选择题1. B2. D3.B4. C5. B四、实践操作题USE employee_manageGO--创建部门信息表结构CREATE TABLE depart(depart_id char(3) PRIMARY KEY,depart_name nvarchar(20) NOT NULL,note nvarchar(50))GO--创建员工信息表结构CREATE TABLE empl(empl_id char(4) PRIMARY KEY,empl_name varchar(10) NOT NULL,sex char(2),birth datetime,duty varchar(20),depart_id char(3))GO--创建请假信息表结构CREATE TABLE leave(cq_id int IDENTITY(1,1) PRIMARY KEY, empl_id char(4) NOT NULL,cq_date datetime,leave_id char(2) NOT NULL,leave_reasom nvarchar(100))GO--创建请假类型表结构CREATE TABLE leaveType(leave_id char(2) PRIMARY KEY,leave_name varchar(20) NOT NULL)GO第四章一、填空题1. from2. <> !=3. ‘s%’‘_s’4. asc desc5. A VG MAX二、选择题1. A2.D3. A4. C5. C6. A7. A8. C9. C 10. A四、实践操作题--1.录入数据表记录--录入部门信息表记录INSERT INTO departV ALUES('001','基础教研室',NULL)GOINSERT INTO departV ALUES('002','专业教研室',NULL)GOINSERT INTO departV ALUES('003','教务科',NULL)GO--录入员工信息表记录INSERT INTO emplV ALUES('0101','王林','男','1956-1-23','院长',NULL)GOINSERT INTO emplV ALUES('0102','袁媛','女','1980-3-15','管理人员','003')GOINSERT INTO emplV ALUES('0201','李敏','女','1966-7-11','教研室主任','001')GOINSERT INTO emplV ALUES('0202','张天一','男','1979-9-11',NULL,'002')GOINSERT INTO emplV ALUES('0203','叶华','女','1982-8-15',NULL,'002')GOINSERT INTO emplV ALUES('0204','朱俊','男','1981-4-13',NULL,'001')GOINSERT INTO emplV ALUES('0205','马涛','男','1971-8-25','教研室主任','002')GOINSERT INTO emplV ALUES('0206','陈琳琳','女','1981-6-19',NULL,'001')GO--录入请假类型表记录INSERT INTO leaveT ypeV ALUES('01','事假')GOINSERT INTO leaveT ypeV ALUES('02','病假')GOINSERT INTO leaveT ypeV ALUES('03','缺假')GOINSERT INTO leaveT ypeV ALUES('04','公假')GO--录入请假信息表记录INSERT INTO leaveV ALUES('0202','2009-3-12','01',NULL) GOINSERT INTO leaveV ALUES('0205','2009-3-18','04','出差天') GOINSERT INTO leaveV ALUES('0202','2009-3-25','01','病假天') GOINSERT INTO leaveV ALUES('0203','2009-3-27','01','病假半天') GOINSERT INTO leaveV ALUES('0204','2009-4-10','03','缺勤天') GOINSERT INTO leaveV ALUES('0202','2009-4-22','02',NULL) GOINSERT INTO leaveV ALUES('0206','2009-3-16','01',NULL) GOINSERT INTO leaveV ALUES('0203','2009-4-15','03','缺勤半天') GOINSERT INTO leaveV ALUES('0204','2009-4-9','02',NULL)GOINSERT INTO leaveV ALUES('0202','2009-4-27','02',NULL) GO--2.修改表结构ALTER TABLE LEA VEADD status varchar(20)GO--3.修改请假信息表记录UPDA TE leaveSET status='已登记'WHERE month(cq_date)=3GOUPDA TE leaveSET status='未登记'WHERE month(cq_date)=4GO--4.查询部门编号为的所有员工的信息SELECT*FROM emplWHERE depart_id='002'GO--5.查询年以后出生的所有员工的信息SELECT*FROM emplWHERE birth>='1980-1-1'GO--6.查询月份请事假的考勤记录信息SELECT*FROM leaveWHERE leave_id='01'AND month(cq_date)=3 GO--7.统计各请假类型的请假人数信息SELECT leave_id 请假类型,count(*)请假人数FROM leaveGROUP BY leave_idGO--8.按员工统计其请假次数SELECT empl_id 员工编号,count(*)请假次数FROM leaveGROUP BY empl_idGO--9.统计员工中的男、女人数SELECT sex 性别,count(*)人数FROM emplGROUP BY sexGO第五章一、填空题1. 逗号JOIN2. INNER JOIN OUTER JOIN CROSS JOIN3. UNION 列数4. 左外连接右外连接全外连接5. EXISTS二、选择题1. A2. D3. A4. A、B5. A、C6. D四、实践操作题--1.查询各员工的基本信息及相应的部门信息SELECT e.*,d.*FROM empl e JOIN depart dON e.depart_id=d.depart_idGO--2.查询所有请假人员的姓名、所属部门、请假日期、请假类型名称SELECT empl_name,depart_name,cq_date,leave_nameFROM empl e JOIN depart dON e.depart_id=d.depart_idJOIN leave l ON l.empl_id=e.empl_idJOIN leaveType lt ON l.leave_id=lt.leave_idGO--3.查询出未请过假的员工的员工编号、姓名、部门名称SELECT empl_id,empl_name,depart_nameFROM empl e JOIN depart dON e.depart_id=d.depart_idWHERE empl_id NOT IN(SELECT empl_id FROM leave)GO--4.查询出各部门的请假人数SELECT depart_name 部门名称,count(*)请假次数FROM empl e JOIN depart dON e.depart_id=d.depart_idJOIN leave l ON l.empl_id=e.empl_idGROUP BY depart_name第六章一、填空题1. 主键约束非空约束2. 实体完整性域完整性参照完整性3. CREATE RULE4. sp_bindefault5. 唯一约束二、选择题1. D2. A3. D4. B5. A四、实践操作题--1.设置部门信息表的部门名称为唯一约束ALTER TABLE departADD CONSTRAINT uq_bmmc UNIQUE(depart_name)GO--2.设置员工信息表的所属部门列为外键约束ALTER TABLE emplADD CONSTRAINT fk_ssbm FOREIGN KEY(depart_id) REFERENCES depart(depart_id)GO--3.设置请假信息表的员工编号列为外键约束ALTER TABLE leaveADD CONSTRAINT fk_ygbh FOREIGN KEY(empl_id) REFERENCES empl(empl_id)GO--4.设置请假信息表的请假类型列为外键约束ALTER TABLE leaveADD CONSTRAINT fk_qjlx FOREIGN KEY(leave_id) REFERENCES leaveType(leave_id)GO--5.设置请假信息表的请假日期列为检查约束ALTER TABLE leaveADD CONSTRAINT ck_qjrq CHECK(cq_date<getdate())GO--6.设置员工信息表的性别列为检查约束ALTER TABLE emplADD CONSTRAINT ck_xb CHECK(sex IN('男','女'))GO--7.设置请假信息表的请假日期列为默认约束ALTER TABLE leaveADD CONSTRAINT df_qjrq DEFAULT getdate()FOR cq_date GO第七章一、填空题1. 视图2. 基本表3. sp_help sp_helptext4. WITH ENCRYPTION5. CREATE VIEW二、选择题1. C2. D3. A4. B四、实践操作题--1.创建视图,查询所有员工的基本信息及相应的部门信息CREATE VIEW v_emplDepartASSELECT e.*,depart_name,noteFROM empl e JOIN depart dON e.depart_id=d.depart_idGO--2.创建视图,查询请假人员的基本信息及请假的详细信息CREATE VIEW v_emplLeaveASSELECT e.*,cq_id,cq_date,leave_id,leave_reasom,statusFROM empl e JOIN leave lON l.empl_id=e.empl_idGO--3.创建视图,查询所有员工的基本信息及请假的详细信息CREATE VIEW v_allEmplLeaveASSELECT e.*,cq_id,cq_date,leave_id,leave_reasom,statusFROM empl e LEFT JOIN leave lON l.empl_id=e.empl_id--4.创建视图,查询出各部门的所有员工的基本信息及请假的详细信息CREATE VIEW v_allDepartEmplLeaveASSELECT depart_name,e.*,cq_id,cq_date,leave_reasom,statusFROM empl e JOIN depart dON e.depart_id=d.depart_idLEFT JOIN leave l ON l.empl_id=e.empl_idGO--5.使用视图v_emplDepart,查询出部门WEI 001的所有员工的信息SELECT*FROM v_emplDepartWHERE depart_id='001'GO--6.使用视图v_emplDepart,统计出各部门员工的人数SELECT depart_id,count(*)部门人数FROM v_emplDepartGROUP BY depart_idGO--6.使用视图v_emplLeave,统计出各请假类型员工的人数SELECT leave_id,count(*)请假人数FROM v_emplLeaveGROUP BY leave_idGO--7.使用视图v_allDepartEmplLeave,统计出各部门员工的请假次数SELECT depart_name,count(*)请假次数FROM v_allDepartEmplLeaveGROUP BY depart_nameGO第八章一、填空题1. 数据定义语言2. 局部变量全局变量3. @@4. DECLARE5. +二、选择题1. B2. D3. C4. B5. D第九章一、填空题1. master sp_2. 输入参数输出参数3. OUTPUT4. SP_HELPTEXT5. WITH RECOMPILE二、选择题1. D2. A四、实践操作题--1.建立一个存储过程,查询某班的所有学生的基本信息。
Sqlserver2005数据库练习题第1章数据库技术基础1.简述数据库、数据库管理系统、数据库系统的含义?2.简述数据库、数据库管理系统、数据库系统之间的联系?3.简单描述层次模型、网状模型、关系模型的含义?4.简述一个学生都包含哪些属性?5.对于一个学生表来说学生姓名是否可以作为主键,为什么?6.描述你所在的班级都有哪些实体?第2章安装Sql Server 2005与服务器管理1.安装sqlserver 2005需要计算机的最低配置是什么?2.x86操作系统是什么概念?3.x64操作系统是什么概念?4.安装数据库时应该选择什么样的操作系统?5.开始安装时需要有哪些准备工作?6.开始安装界面中的其他信息是什么意思?7.用户许可协议必须为接受么?8.用户许可协议是否可以打印?9.系统配置界面中需要检查哪些项?10.详细信息中哪些项要求必须安装成功才能进行下一步的操作?+目录指的是什么?12.iis功能要求指的是什么?13.mdac版本的最低要求是什么?14.实例名中的默认实例是什么含义?15.实例名中的命名实例是什么含义?16.服务器名指的是什么?17.服务帐户中使用内置系统帐户是什么含义?18.服务帐户中使用域帐户是什么含义?19.安装结束时启动服务包括什么?20.sqlserver2005提供的服务有哪些?21.安装结束后,哪些服务要求必须启动?22.ms sqlserver是什么服务?23.sql server agent是什么服务?24.sql server analysis services是什么服务?25.sql server browser是什么服务?26.如何对服务进行启动、暂停和停止操作?27.启动数据库时需要做什么工作?28.如何注册数据库?29.如何删除注册的服务?30.如何更改数据库的登陆模式?31.在同一台计算机中再次安装数据库时会出现什么情况?32.如何使用数据库的对象浏览器?在网络机顶盒的主页,用遥控器选择左下方的有人民币符号的红色图标,登陆淘宝账户,先领取2张25元的红包;2、领取红包成功后,点击使用红包,然后进入聚划算、天猫或直接水电煤缴费;3、本人实际操作,在网络机顶盒的使用红包页面,进入聚划算,选择了一款商品,按屏幕提示,点击遥控键OK键购买,确认收货地址,付款时选择右边的快捷支付;4、出现支付宝账号认证界面,输入支付宝支付密码认证身份;5、通过认证后,在最终付款确认页面,会显示支付宝余额及红包金额勾选项,默认为已选择,点击付款即可;第3章管理Sql Server 2005数据库1.数据库中的系统数据库包含哪些?2.数据库中的示例数据库包含哪些?3.系统数据库的作用分别是什么?4.示例数据库的作用分别是什么?5.数据库的关键信息存放在哪个库中?6.创建用户数据库之前应该首先备份哪个数据库?7.创建数据库的方式分为哪几种?8.数据库下面都包含哪些对象?9.使用sql语句创建数据库的关键字是什么?10.数据库包含几个文件?11.数据库文件的作用分别是什么?12.数据库文件的扩展名分别是什么?13.文件组的作用是什么?14.如果创建数据库不指明文件组,默认文件组是什么?15.创建数据库时指明每次文件增长大小是什么含义?16.创建数据库时指明文件的初始大小是什么含义?17.日志文件和主文件是否可以不在一个存放目录?日志文件适合存放在什么样的硬盘环境下?18.数据文件的组成单位是什么,具体含义?19.若一个数据库文件已经创建,是否可以对它修改,如何修改?20.使用create database命令创建数据库的初始大小是多少?默认路径是什么?21.如何使用命令查看已创建的数据库信息?22.如何缩减数据库容量?23.使用什么关键字可以在查询分析器中打开刚刚创建的数据库?24.数据库的单用户和多用户状态是什么含义?25.如何在查询分析器中将数据库更名?26.创建一个名为mydata的用户数据库,其数据文件的初始大小为12M,无最大限制,以12%的速度增长,日志文件的初始大小为2M,最大10M,以1M的速度增长。
数据库应用基础A实训一、实训目的1、进一步明确数据库管理的主要功能。
2、进一步掌握SQL Server 2005数据库及其组成。
3、进一步熟悉主要数据库对象的操作。
4、提高应用SQL Server 2005数据库的能力。
5、提高T-SQL语句的编写能力。
二、实训内容(一)关系运算练习对于学生选课关系,其关系模式如下:学生(学号,姓名,年龄,所在系)课程(课程名,课程号,先行课)选课(学号,课程号,成绩)试用关系代数完成下列查询:①求成绩不及格的学生学号和姓名Π学号,姓名(δ成绩<60(学生∞选课))②求学过数据库课程的学生学号和姓名Π学号,姓名(δ课程名=‘数据库’(学生∞选课∞课程))③求数据库成绩不及格的学生学号和姓名Π学号,姓名(δ课程名=‘数据库’∧成绩<60(学生∞选课∞课程))④求学过数据库和数据结构课程的学生学号和姓名Π学号,姓名(δ课程名=‘数据库’(学生∞选课∞课程))∩Π学号,姓名(δ课程名=‘数据结构’(学生∞选课∞课程))⑤求学过数据库或数据结构课程的学生学号和姓名Π学号,姓名(δ课程名=‘数据库’(学生∞选课∞课程))∪Π学号,姓名(δ课程名=‘数据结构’(学生∞选课∞课程))⑥求没学过数据库课程的学生学号Π学号(学生)-Π学号(δ课程名=‘数据库’(选课∞课程))(二)E-R图设计1、有以下学校选课管理的信息系统开发需求:(1)学生查看成绩、查看课程和开课教师信息。
(2)学生选课。
(3)教师查看所开课的选课学生基本信息。
给出E-R图,然后给出关系模式。
2)关系模式学生(*学号,姓名,性别,&专业号)教师(*工号,姓名,性别,&系编号)课程(*课程号,课程名,课程性质(公共、专业),学分)学院(*学院编号,名称)系(*系编号,名称,&学院编号)专业(*编号,名称,&系编号)学生-课程(*&学号,*&课程号,考试成绩)教师-课程(*&工号,*&课程号,上课时间)注:*表示主码,&表示外码2、请设计一个连锁商店数据库,保存商店的信息,包括:商店编号,商店名称,电话。
SQL SERVER 2005上机操作题在硬盘D:上建立文件夹STUXXX其中xxxx为自己的学号,下面所建数据库及数据库备份都放到此文件夹下。
一、在当前服务器上创建数据库STUxxxx(其中xxxx为自己的学号)。
如:CREATE DA TABASEstu200800101。
数据库初始大小3M,最大值500M,文件增长率2%。
(5分)二、在STUxxxx数据库中使用SQL语句创建如下的表结构:1.学生情况表(XS)结构(5分)2.课程表(KC)结构(5分)3.学生与课程表(XS_KC)结构(5分)三、向数据库STUxxxx的XS表、KC表和XS_KC表中插入或修改成如下数据:学生情况表(XS)4分课程表(KC)3分学生与课程表(XS_KC)3分四、以下题目均在STUxxxx(学生管理)数据库中完成。
2*15=301.查询XS表中的学生数据来自哪些专业(使用DISTINCT子句消除结果集中的重复行)。
2.查询XS表中各个同学的姓名、专业名和总学分,只返回结果集的前5行。
3.查询XS表中每个学生的学号、姓名和年龄信息。
4.查询XS表中专业名为“计算机”或“电子”或“数学”的学生的情况。
5、查询选修了课程号为101的每个学生的姓名及成绩。
6、查询“计算机”专业且选修了“计算机基础”课程的学生的学号、姓名及成绩。
7、从XS表中查询学生的基本信息,要求按照总学分从高到低排序,学分相同时,按学号由低到高排序。
8、求选修了“101”课程的学生的平均成绩。
9、求选修了任意一门课程的学生的人数。
10、统计各个专业的学生数。
(按专业分组)11、将XS表中计算机专业的学生的总学分增加10分。
12、将XS1表中总学分小于10分的学生数据删除。
13、使用SQL语句创建视图V_SCORE2,显示计算机专业每个学生的学号、姓名、选修的课程名称及其成绩。
14、通过V_SCORE2查看计算机专业每门课程的平均成绩。
15、备份数据库STUxxxx到DISK上,设备逻辑名为STUBK,物理路径为D:\ STUxxxx五、数据库编程(4*10=40分)1、编程实现判断学号为4102101,103号课程的成绩等级,60分以下不及格,60-75分(含60分)为中,75-90之间为良好(含70分),90分为优秀。
1.考虑一个在线图书管理系统,图书管理员可以将图书信息录入到系统,图书分各种类别,读者可以下通过系统下借书单(含读者、下单日期、单据状态等信息)借书,一次可以借多本图书。
下单成功后到图书馆领书,图书管理员将你的借书单的状态标记为已领书,读者阅读完后到图书馆还书,图书管理员找到对应的借书单标记为已还书。
根据以上描述为系统设计E-R图并为系统设计出符合3NF表。
2.查询所有C语言成绩比其所在班级平均成绩高的学生3.查找C语言没有成绩的所有学生的信息(使用exists实现)4.用一条SQL语句查询出每门课都大于80分的学生姓名5.查询出所有同名的学生,列出姓名、班级6.假设每个学生每门课程都应该有成绩,查询出没有成绩的学生及其课程,列出姓名、班级名、课程、成绩7.行列转换8.本月的第一个星期一9.安全: 创建登录、创建用户、授权、删除登录、删除用户10.自己创建一个工资表,插入十条记录,然后利用游标来修改工资值:a)工资低于2000的,增加800b)工资在2000—3000的,增加500c)工资在3000—4000的,增加200d)工资高于4000的,减少10011.图书销售系统的三个表:图书、订单、订单项,如下:假设李四要购买2本Java、2本JSP,写一段代码保存该订单,参考步骤如下:启动事务保存订单记录保存订单项记录从客户的帐户中扣除所购买商品的金额,若金额不够,撤销前两步的操作扣除图书库存,若库存不够,撤销前面三步的操作提交事务12.写一个过程,计算某个月有多少天。
13.编写一个给所有员工加薪10%的过程,这之后,如果已经雇佣该雇员超过60个月,则给他额外加薪2000.18. 已知表数据:姓名金额日期张三100 1998/4/8张三10 1998/7/4里斯20.5 1999/8/9张三10 1999/8/7王五30.5 1998/1/1刘二22.5 2000/8/4里斯30 2001/8/9赵毅 2 2002/8/4王五14 2000/2/21张三52 1999/12/9王八33 2005/8/9刘二20 2007/8/9张三100 2007/10/21编写存储过程,统计所有人每一年的总金额,如:姓名1998年总金额1999年总金额。
一.单选题(每题3分,共30分)。
1、SQL Server 2005是一个()的数据库系统。
(A)网状型(B)层次型(C)关系型(D)以上都不是2、SQL Server的字符型数据类型主要包括()(A) int、money、char (B) char、varchar、text(C)datetime、binary、int (D) char、varchar、int3、关于主键描述正确的是:()(A)包含一列(B)包含两列(C)包含一列或者多列(D)以上都不正确4、对视图的描述错误的是:()(A)是一张虚拟的表(B)在存储视图时存储的是视图的定义(C)在存储视图时存储的是视图中的数据(D)可以像查询表一样来查询视图5、在SQL语句中,用来插入数据的命令是,用于更新的命令是。
()(A)INSERT,UPDATE (B)UPDATE,INSERT(C)DELETE,UPDATE (D)CREATE,INSERT6 、关系数据模型 ______ ()(A)只能表示实体间的 1 : 1 联系(B)只能表示实体间的 1 : n 联系(C)只能表示实体间的 m : n 联系(D)能表示实体间的上述 3 种联系7、DBMS是什么?()(A)操作系统(B)数据库管理系统(C)数据库(D)数据库管理员8、关于关系模型的特征判断,下列正确的一项:()(A)只存在一对多的实体关系,以图形方式来表示。
(B)以二维表格结构来保存数据,在关系表中不允许有重复行存在。
(C)能体现一对多、多对多的关系,但不能体现一对一的关系。
(D)关系模型数据库是数据库发展的最初阶段。
9、要删除视图myview,可以使用()语句。
(A) DROP myview (B)DROP TABLE myview(C) DROP INDEX myview (D)DROP VIEW myview10、在SQL Server 2005中,当数据表被修改时,系统将会自动执行的数据库对象是()(A)存储过程(B)触发器(C)视图(D)其他数据库对象二.填空题(每空2分,共30分)1 SQL Server 2005的文件包括: 数据文件和。
SQLServer2005数据库技术网上平台作业(电大)作业一单选题(总分45.00)1.实体型学生与任课教师之间具有()联系。
(3.00分)A. 多对多B. 一对一C. 多对一D. 一对多2.在文件系统阶段,数据()。
(3.00分)A. 具有物理独立性B. 具有逻辑独立性C. 无独立性D. 独立性差3.一个仓库可以存放多种产品,一种产品只能存放于一个仓库中。
仓库与产品之间的联系类型是()。
(3.00分)A. 多对多的联系B. 一对一的联系C. 一对多的联系D. 多对一的联系4.在关系运算中,选取符合条件的元组是()运算。
(3.00分)A. 连接B. 选择C. 除法D. 投影5.不属于传统数据模型的是()。
(3.00分)A. 关系数据模型B. 网状数据模型C. 层次数据模型D. 面向对象数据模型6.现有关系:学生(学号,姓名,课程号,系号,系名,成绩,为消除数据冗余,至少需要分解为()。
(3.00分)A. 3个表B. 2个表C. 4个表D. 1个表7.数据库系统软件包括DBMS和()。
(3.00分)A. 数据库应用系统和开发工具B. 数据库C. OSD. 高级语言8.一个m:n联系转换为一个关系模式。
关系的码为()。
(3.00分)A. 任意一个实体的码B. 某个实体的码C. 各实体码的组合D. n端实体的码9.数据库设计中的概念结构设计的主要工具是()。
(3.00分)A. 概念模型B. E-R模型C. 数据模型D. 新奥尔良模型10.数据库设计中的逻辑结构设计的任务是把()阶段产生的概念数据库模式变换为逻辑结构的数据库模式。
(3.00分)A. 需求分析B. 逻辑结构设计C. 物理设计D. 概念结构设计11.()是长期存储在计算机内的有组织,可共享的数据集合.(3.00分)A. 数据库系统B. 数据库管理系统C. 文件组织D. 数据库12.在数据库设计中使用E-R图工具的阶段是( )。
(3.00分)A. 概念结构设计阶段B. 数据库实施C. 需求分析阶段D. 数据库物理设计阶段13.()属于信息世界的模型,是现实世界到机器世界的一个中间层次.(3.00分)A. 概念模型B. 关系模型C. 数据模型D. E-R图14.数据库管理系统的英文缩写是()。
SQL Server 2005题库一、单选题(共0分)1、在SQL Server中,客户机/服务器的主要功能中,下面不正确的是(0)A、客户机负责数据管理及程序处理B、客户机负责显示数据信息C、客户机向服务器提出处理要求D、服务器响应后将处理结果返回客户机2、当数据库损坏时,数据库管理员可通过何种方式恢复数据库?(0)A、事务日志文件B、主数据文件C、Delete语句D、联机帮助文件3、当执行create database语句时,新数据库的第一部分通过复制以下哪个数据库中的内容创建,剩余部分由空页填充(0)A、masterB、modelC、msdbD、tempdb4、在数据操作语言(DML)的基本功能中,不包括的是(0)A、插入新数据B、描述数据库结构C、修改数据D、删除数据5、下列固定数据库角色中db_datawriter的权限为(0)A、拒绝选择数据库数据的权限B、拒绝更改数据库数据的权限C、查看来自数据库中所有用户表的全部数据D、添加、更改或删除来自数据库中所有用户表的数据6、用于维护数据完整性的对象不包括(0)A、约束B、规则C、索引D、触发器7、对于数据库的管理,对SQL Server中guest用户的描述错误的是(0)A、安装系统时,guest用户被加入到master、pubs、tempdb、northwind数据库中B、用户成功登录到SQL Server后,若该登录账号在某数据库中无合法数据库用户,则系统将可能允许以guest用户来访问该数据库C、不能从master、tempdb数据库中删除guest用户D、在新建一个数据库时,guest用户将被自动添加8、欲往表中增加一条记录,应该用哪一条SQL语句?(0)A、alter tableB、insert into tableC、create tableD、drop table9、下列标识符可以作为局部变量使用的是(0)A、[@myvar]B、my varC、@myvarD、@my var10、select 学号,avg(成绩) as 平均成绩 from xscj group by 学号 having avg(成绩)>=85,表示(0)A、查找xscj表中平均成绩在85分以上的学生的学号和平均成绩B、查找平均成绩在85分以上的学生C、查找xscj表中各科成绩在85分以上的学生D、查找xscj表中各科成绩在85分以上的学生的学号和平均成绩11、你是公司的数据库管理员,有一天你要删除数据库中的一个视图 vwOrders(创建时没有使用with encription)时,系统提示存在其它视图依赖此视图,从而删除失败,你要怎么知道是哪个视图依赖这个视图呢?(0)A、通过查询系统表syscomments来得到视图的定义,从而得到依赖信息B、使用sp_helptext …vwOrders‟来得到视图的定义,从而得到依赖信息C、使用 sp_depends …vwOrders‟,来得到依赖信息D、查询information_schema.view_table_usage视图来得到依赖信息12、以哪个符号开头的变量是全局变量(0)A、@B、@*C、@@D、@$13、对象的完全限定名包括(0)A、服务器名、数据库名、对象名B、数据库名、所有者名、对象名C、服务器名、数据库名、对象名D、服务器名、数据库名、所有者名、对象名14、在SQL Server中,一个数据库可最多创建()个表(0)A、1024B、20亿C、8092D、25615、truncate table命令可以删除(),但表的结构及其列、约束、索引等保持不变(0)A、当前记录B、所有记录C、指定记录D、有外键(foreign key)约束引用的表16、使用create table #aa(a int)语句所创建的表将被放到以下哪个数据库中(0)A、当前数据库B、tempdbC、msdbD、model17、下列()数据类型的列不能被指定为主键,也不允许指定主键列有null属性(0)A、int和decimalB、nvarchar和datetimeC、image和textD、real和money18、执行带参数的过程,正确的格式为(0)A、过程名参数B、过程名(参数)C、过程名=参数D、A,B,C三种都可以19、group by子句用来指定(0)A、查询结果的分组条件B、组或聚合的搜索条件C、限定返回的行的搜索条件D、结果集的排序方式20、()能够创建数据库(0)A、有create database权限的用户B、任何SQL Server用户C、任何Windows用户D、任何混合用户21、先通过以下语句创建触发器in_tr:create trigger in_tr on xs instead of delete as select * from xs然后执行delete xs语句,结果为(0)A、删除了xs表中所有记录B、返回错误提示C、没有删除xs表中记录,查询出xs表中所有记录D、没有删除xs表中记录22、在一个非聚集索引的B-树中,已知它有4级(根结点为第一级,叶级为第四级)。
第一章思考与练习题一、选择题1.三级模式间存在两种映射,它们是()。
A.模式与子模式间,模式与内模式间B.子模式与内模式间,外模式与内模式间C.外模式与模式间,模式与内模式间D.模式与内模式间,模式与模式间2.SQL Server系统中的所有系统级信息存储于哪个数据库()。
A.master B.model C.tempdb D.msdb3.下面关于tempdb数据库描述不正确的是()。
A.是一个临时数据库B.属于全局资源C.没有权限限制D.是用户建立新数据库的模板4.数据库管理系统常见的数据模型有()。
A.网状、关系和语义B.层次、关系和网状C.环状、层次和关系D.网状、链状和层次6.用户看到的数据表,属于数据库系统三级模式中的()。
A.外模式B.内模式C.子模式D.模式7.在SQL Server数据库中,默认情况下Sys通常是()。
A.数据文件的后缀B.事务日志文件的后缀C.系统表表名的前缀D.辅助文件的后缀二、填空题1.计算机数据处理技术大致经历了(人工管理)、(文件系统管理)、(数据库系统管理)、(分布式数据库管理)的发展阶段。
2.数据库系统由(外模式)、(模式)和(内模式)三级抽象模式构成。
3.数据文件的后缀是(mdf )。
4.事务日志文件的后缀是(ldf )。
5.SQL Server数据库分为(系统数据库)和(用户数据库)两种类型。
6.使用数据库设计程序时,只需要告诉数据库管理系统__做什么___,不需要告诉它___怎么做_____。
7. 层次模型是一棵__树形__结构,关系模型是一个__二维表____结构。
8. 数据库系统中的四类用户分别为数据库管理员、数据库设计员、__应用程序员___和____终端用户________。
三、是非判断题1.在文件管理阶段,文件之间是相互联系的,在数据库管理阶段,文件之间是相互独立的。
X2.分布式数据库系统既支持客户的局部应用,又支持客户的全局应用。
√3.在文件系统中,不容易做到数据共享,而在数据库系统中,容易做到数据共享。
SQL SERVER 2005上机操作题注意:1、除题目中有明确注明,否则可选择SSMS或SQL语句完成。
操作题不要求写步骤,最后将数据库完全备份文件上交,写SQL语句和问答第六题答案写在此文档相应题目后面。
2、SQL语句题上机调试正确才可写到题目中,否则不计分。
3、11:15考试结束,将此文档和STUxxxx数据库完全备份文件打包成XXX.rar文件(以学号姓名班级命名),通过右下角任务栏多媒体网络教学系统 提交作业,将文件上传。
一、创建数据库STUxxxx(其中xxxx为自己的学号,创建方法和数据库参数自定)。
如:CREATE DATABASE STU200800101二、在STUxxxx数据库中创建如下的表结构:1.学生情况表(XS)结构2.课程表(KC)结构3.学生与课程表(XS_KC)结构三、使用SQL语句对以上的表结构进行修改,将调试正确的语句写在下面每小题后面。
1.修改学生情况表(XS)的“出生日期”字段,使其数据类型改为datetime,且允许为空。
2.删除学生与课程表(XS_KC)中的“学分”字段。
3.修改学生情况表(XS),删除“班级”字段,增加一“专业”字段(varchar(20),默认值为“计算机”)四、向数据库STUxxxx的XS表、KC表和XS_KC表中插入或修改成如下数据:学生情况表(XS)课程表(KC)学生与课程表(XS_KC)五、以下题目均在STUxxxx(学生管理)数据库中完成,将调试正确的语句和查询结果写在下面相应题目后面。
每大项只做自己学号最后一位对应的题目,1号做第1题,2号做第2题,…,0号做第10题。
(一)简单查询1.查询XS表中各个同学的所有信息。
2.查询XS表中各个同学的姓名、专业名和总学分。
3.查询XS表中所有同学的学号、姓名和总学分,结果中各列的标题分别指定为num,name和mark。
4.查询XS表中的学生数据来自哪些专业(使用DISTINCT子句消除结果集中的重复行)。
SQL_Server_2005题库1SQL Server 2005题库一选择题1、在SQL SERVER 所提供的服务中,(A )是最核心的部分。
A、MSSQLServerB、SQL Server AgentC、MS DTCD、SQL XML2、下列哪个标识符不是SQL SERVER 2005的常规标识符(A )。
A、3bB、#xueshengC、##xueshengD、_2abc3、下列哪个函数不属于聚合函数(D )。
A、count()B、avg()C、min()D、str()4、下列各运算符中(A )不属于逻辑运算符。
A、&B、notC、andD、or5、下列哪条语句能够从学生表中查询出姓名的第二个字是“敏”的学生的信息(B )。
A、select * from 学生表where 姓名=’_敏%’B、select * from 学生表where 姓名like ’_敏%’C、select * from 学生表where 姓名like ’%敏%’D、select * from 学生表where 姓名like ’%敏’6、聚合函数不可以用在下列哪个语句中(D )。
A、SELECT子句B、HA VING 子句C、WHERE 子句D、子查询7、下列哪些选项在T-SQL语言中使用时不用括在单引号中(D )。
A、单个字符B、字符串C、通配符D、数字8、下列哪种方法不能用来启动SQL SERVER 2005数据库服务器(C )。
A、使用服务管理器启动数据库服务器B、使用企业管理器启动数据库服务器C、使用“管理工具”中的“服务”启动数据库服务器D、使用查询分析器启动数据库服务器9、下列哪个命令必须在单个批命令中执行。
(D )A、CREATE DATABASEB、CREATE TABLEC、CREATE INDEXD、CREATE VIEW10、下列有关关键字的说法中,不正确的是(B )。
A、主关键字能惟一标识表中的每一行B、每个表中一定存在外关键字C、侯选关键字中的任一个都可以充当主关键字D、关键字的值不能重复,也不能为NULL11、根据关系数据基于的数据模型——关系模型的特征判断下列正确的一项:(__B_)A、只存在一对多的实体关系,以图形方式来表示。
SQL Server 2005实用教程试题一及答案一、选择题(每题2分,共30分)下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确的选项涂写在答题卡相应位置上,答在试卷上不得分。
1. 在关系表中,如果一个字段或者几个字段组合的值可以唯一标识其对应的数据记录,则称该字段或者字段组合为()。
A. 码B. 主键C. 外键D. 字段2. 管理数据库的系统简称为()。
A. DBMSB. DBAC. DBSD. RDBMS3. 安装SQL Server 2005时,可以通过单击“要安装的组件”对话框的()按钮来自定义要安装的组件和路径。
A.下一步B.高级C.上一步D.帮助4. SQL Server 2005设计了()个不同的版本来满足用户的不同需要。
A.3B.5C.4D.65. 安装SQL Server 2005 Reporting Services需要安装()或者更高版本。
A. IE 4.0B. IE 6.0C. IIS 5.0D. Service Pack26.()是SQL Server 2005的核心管理工具,该工具可以用来配置数据库系统,操作数据库对象,设置数据库安全等。
A.事件探查器B.服务器网络实用工具C.SQL Server Management Studio。
D.客户端网络实用工具7.()是负责数据库系统日常运转的高级人员。
A.网络管理员B.DBSC.DBAD.系统管理员8.()是一个用户定义的SQL事务命令的组合,当对数据库对象进行操作时,这些事先定义的命令就会自动执行。
A. 表B.数据类型C. 用户自定义D. 触发器9. 下面()数据类型用来存储二进制数据。
A. DatetimeB. SmallmoneyC. RealD. Binary10. 下面()语句是数据查询动词。
A. SELECTB. UPDATEC. GRANTD. CREATE11. ()数据库供SQL Server Agent用来计划警报和作业。
对以下题目请选择正确答案(每道题目有一个或多个正确的答案)。
针对每一道题目,所有答案都选对,则该题得分,否则不得分。
1. 数据库设计的最终目标不包括()。
(选择两项)BDA. 高效B. 满足范式要求C. 安全D. 表现设计者的技术实力E. 易用F. 便于将来扩展功能和容量2. 有关数据冗余说法错误的是()。
(选择一项)CA. 数据库中,数据存在副本的现象,就是数据冗余。
B. 通过分类存储,可以有效减少数据冗余,但是会增加数据查找的复杂性。
C. 在数据库设计阶段,一定要尽最大可能避免数据冗余,最好做到无数据冗余。
D. 数据冗余通常是由于数据库设计引起的。
3. 用于表示数据库实体之间的关系图是()。
AA. 实体关系图B. 数据模型图C. 实体分类图D. 以上都不是4. 假定有一个用户表,表中包含字段:userid (int)、username (varchar)、password(varchar)等,该表需要设置主键,以下说法正确的是()。
(选择两项)ABA. 如果不能有同时重复的username和password,那么username和password可以组合在一起作为主键。
B. 此表设计主键时,根据选择主键的最小性原则,最好采用userid作为主键。
C. 此表设计主键时,根据选择主键的最小性原则,最好采用username和password作为组合键。
D. 如果采用userid作为主键,那么在userid列输入的数值,允许为空。
5. 语句alter table userinfo add constraint uq_userid unique(userid)执行成功后,为userinfo表的()字段添加了()约束。
BA. userid 主键B. userid 唯一C. uq_userid 外键D. uq_userid 检查6. 运行如下T-SQL,结果返回包含()的记录集。
Acreate table scores(scoreid int identity(1,2),score numeric(4,2) not null,courseid int)insert int scores values(90.5,null);insert into scores values(78.234,2);select * from scores;A. 1 90.50 NULL3 78.23 2B. 1 78.23 2C. 1 90.50D. 1 90.502 78.23 27. 关于子查询,以下说法正确的是()。
SQL server 练习题一、单项选择题(每小题1分,共20分)每小题列出的四个选项中只有一个选项是符合题目要求的,请将正确选项前的字母填在题后的括号内。
1.在数据库设计中使用E-R图工具的阶段是( )。
A.需求分析阶段B.数据库物理设计阶段C.数据库实施D.概念结构设计阶段2.数据库设计中的逻辑结构设计的任务是把( )阶段产生的概念数据库模式变换为逻辑结构的数据库模式。
A.需求分析 B.物理设计 C.逻辑结构设计 D.概念结构设计3.SQL Server2000是( )数据库。
(A)关系 (B)网状 (C)树型 (D)层次4.SQL SERVER2000属于( )(A)关系数据库 (B)概念数据库 (C)网状数据库 (D)层次数据库5.关系数据库中,一个关系代表一个( )。
(A) 表 (B)查询 (C)行 , (D)列6.关系数据库中,一个元组是一个( )。
(A) 表 (B)查询 (C)行 , (D)列7. 数据库系统的核心是( )。
(A) 用户 (B)数据 (C)数据库管理系统 (D)硬件8. DBMS代表( )。
(A) 用户 (B)数据 (C)数据库管理系统 (D)硬件9.建立在操作系统之上,对数据库进行管理和控制的一层数据管理软件是( )(A)数据库 (B)数据库系统(C)数据库管理系统 (D)数据库应用系统10.数据库系统通常由四部分组成,即:( )。
(A)硬件、软件、数据库、用户(B)操作系统、数据库管理系统、数据库管理员、终端用户(C)数据库、系统分析员、数据库管理员、终端用户(D)操作系统、数据库管理系统、应用程序员、用户11. 下列四项中说法不正确的是( )。
(A)数据库减少了数据冗余 (B)数据库中的数据可以共享(C)数据库避免了一切数据的重复 (D)数据库具有较高的数据独立性。
12. 如果在一个关系中,存在某个属性(或属性组),虽然不是该关系的主码或只是主码的一部分,但却是另一个关系的主码时,称该属性(或属性组)为这个关系的A.候选码B.主码C.外码D.连接码13.以下关于外键和相应的主键之间的关系,正确的是( )。
一1.使用SQL Server管理平台中创建studentsdb数据库,并修改studentsdb数据文件和日志的初始大小、最大文件大小、增长容量及文件路径。
2.使用Transact-SQL语句CREATE DATABASE创建studb数据库,指定数据文件大小、最大文件大小、增长容量及文件路径。
3.使用Transact-SQL语句ALTER DATABASE完成修改数据库设置、增加日志文件及更名等操作。
4.使用SQL Server管理平台中在studentsdb数据库中创建数据表student_info(其数据结构如图1-2所示),并增加部分数据。
5.使用Transact-SQL语句CREATE TABLE在studentsdb数据库中创建grade表,其数据结构如图1-4所示。
6.使用Transact-SQL语句ALTER TABLE修改grade表的“学号”列,使之为非空。
7.使用Transact-SQL语句ALTER...ADD为studentsdb数据库的grade表添加一个名为“备注”的数据列,其数据类型为VARCHAR(20)8.使用Transact-SQL语句INSERT INTO...VALUES向studentsdb数据库的grade表插入数据:学号为0004,课程编号为0001,分数为80。
9.使用Transact-SQL语句DELETE删除studentsdb数据库的grade表中学号为0004的成绩记录。
10.使用Transact-SQL语句UPDATE将studentsdb数据库的grade表中学号为0003、课程编号为0005的分数修改为90的成绩记录。
二1.在studentsdb数据库中使用SELECT语句进行基本查询。
(1) 在student_info表中,查询每个学生的学号、姓名、出生日期信息。
(2) 查询学号为0002 的学生的姓名和家庭住址。
(3) 找出所有男同学的学号和姓名。
使用SQL Server2005创建数据库和表1、使用SQL Server2005数据库管理系统创建数据库和表在本练习中,将使用SQL Server2005数据库管理系统创建Student数据库,并在Student 数据库中创建表Student,使你能够掌握使用SQL Server2005数据库管理系统创建数据库和表的方法。
1)启动SQL Server2005:依次单击开始->所有程序->SQL Server 2005->SQL Server Management StudioExpress启动SQL Server 2005数据库管理系统2)登录数据库服务器:点击“连接到服务器“对话框中的连接按钮连接到SQL Server 2005数据库服务器。
3)创建数据库Student在SQL Server 2005数据库管理系统的左边栏“对象资源管理器”中右击数据库对象,在弹出的快捷菜单中单击“新建数据库”命令。
在弹出的“新建数据库”对话框右侧的数据库名称中输入数据库名称“Student”,然后单击确定。
4)在Student数据库中新建表”Student”单击SQL Server 2005数据库管理系统的左侧的“对象资源管理器”栏中的”刷新”按钮,以显示出新建的数据库“Student”。
依次展开左侧栏对象资源管理器中的“数据库”->“Student”,并右击Student数据库中的表项目,在弹出的快捷菜单中单击“新建表”命令。
在右侧在工作区中输入“Student”表的信息,该表具有如下列:单击文件菜单中的保存命令保存该表,并取名为“Student”。
2 使用SQL语句创建数据库和表1)单击工具栏中的“新建查询”按钮,并在弹出的“连接到服务器”对话框中单击“连接”按钮,新建一个SQL脚本。
2)在右侧的SQL脚本输入框中输入如下SQL代码:CREATE DATABASE STUDENT -- 创建STUDENT数据库GOUSE STUDENT -- 转到STUDENT数据库GOCREATE TABLE STUDENT -- 在STUDENT数据库中创建表STUDENT(Sno CHAR(5)PRIMARY KEY,Sname CHAR(10)NOT NULL,Ssex BIT,Sage INT,Sdept CHAR(15))单击工具栏中的执行按钮,运行SQL语句,完成数据库与表的创建。
SQL SERVER 2005操作题一、在你的本机的服务器上创建数据库STUxx(其中xx为自己的学号后两位,其主数据文件逻辑名STU+2位学号_data,物理文件名test+2位学号_data.mdf,初始大小(设定为你学号最后一位数,如为0的设置为倒数第2位数)MB,最大尺寸为无限大,增长速度1MB;数据库日志文件逻辑名称为test+2位学号_log,物理文件名为test+2位学号_log.ldf,初始大小为1MB,最大尺寸为5MB,增长速度为10%。
)。
create database STU23on primary(name=STU23_data,filename='F:\胡顺芬\STU23\STU23_data.mdf',size=5mb,maxsize=unlimited,filegrowth=1mb)log on(name=test23_log,filename='F:\胡顺芬\STU23\test23_log.ldf',size=1mb,maxsize=5mb,filegrowth=10%)在STUxx数据库中使用SQL语句创建如下的表结构:1.学生情况表(XS_XX)结构列名数据类型长度可否为空默认值说明学号Char 12 否无主键姓名Char 8 否无性别Bit 否 1 男1,女0 出生日期smalldatetime 否无班级Char 5 是‘41021’学分Tinyint 是0备注Text 是无Use STU23CREATE TABLE SX_23(学号char(12)CONSTRAINT pk_xh PRIMARY KEY,姓名char(8)NOT NULL,性别bit NOT NULL default 1,出生日期smalldatetime NOT NULL,班级char(5)NULL,学分tinyint NULL,备注text NULL)GO2.课程表(KC_XX)结构列名数据类型长度可否为空默认值说明课程号Char 3 否无主键课程名Char 20 否无开课学期Tinyint 否 1 只能为1~8学时Tinyint 否无学分Tinyint 否0use STU23gocreate table KC_23(课程号char(3)constraint pk_zydm primary key,课程名char(20)not null,开课学期tinyint not null default 1,学时tinyint not null,学分tinyint not null default 0)Go3.学生与课程表(XS_KC_XX)结构列名数据类型长度可否为空默认值说明学号Char 12 否无外键(参照学生表中的学号)课程号Char 3 否无外键(参照课程表中的课程号)成绩Tinyint 是0 0≤成绩≤100学分Tinyint 是0use STU23gocreate table SX_KC_23(学号char(12)constraint pk_zyxdm references SX_23(学号),课程号char(3)constraint pk_bzxdm references KC_23(课程号),成绩tinyint default 0,学分tinyint default 0)go二、使用SQL语句对以上的表结构进行修改1.修改学生情况表的“出生日期”字段,使其数据类型改为datetime,且允许为空。
use STU23goALTER TABLE SX_23ALTER COLUMN出生日期datetimego2.删除学生与课程表中的“学分”字段。
3.修改学生情况表(XS_XX),删除“班级”字段,增加一“专业”字段(varchar(20), 默认值为“计算机”)€use STU23alter table SX_23add专业varchar(20)Go三、向数据库STUxx的XS_XX表、KC_XX表和XS_KC_XX表中插入或修改成如下数据:学生情况表(XS_XX)学号姓名性别出生日期专业总学分备注11004102101 王林 1 1983-1-23 计算机40 NULL11004102102 吴荣华0 1984-3-28 计算机44 NULL11004202103 张强 1 1981-11-19 电子NULL NULL11004202110 王向荣 1 1980-12-9 电子50 NULL11004202221 李丽0 1982-7-30 电子NULL NULL11004302101 刘明 1 1982-10-18 自控38 NULL11004402130 叶凡 1 1983-11-18 数学46 转专业学习学号姓名性别出生年月多媒体学号+40 NULLuse STU23goinsert sx_23(学号,姓名,性别,出生日期,专业,学分)values('11004102101','王林',1,'1983-1-23','计算机',40) goinsert sx_23(学号,姓名,性别,出生日期,专业,学分)values('11004102102','吴荣华',0,'1984-3-28','计算机',44) goinsert sx_23(学号,姓名,性别,出生日期,专业)values('11004202103','张强',1,'1981-11-19','电子')goinsert sx_23(学号,姓名,性别,出生日期,专业,学分)values('11004202110','王向荣',1,'1980-12-9','电子',50)goinsert sx_23(学号,姓名,性别,出生日期,专业)values('11004202221','李丽',0,'1982-7-30','电子')goinsert sx_23(学号,姓名,性别,出生日期,专业,学分)values('11004302101','刘明',1,'1982-10-18','自控',38)goinsert sx_23(学号,姓名,性别,出生日期,专业,学分,备注)values('11004402130','叶凡',1,'1983-11-18','数字',46,'转专业学习') goinsert sx_23(学号,姓名,性别,出生日期,专业,学分)values('120601303123','胡顺芬',0,'1993-12-2','电商',63)Go课程表(KC_XX)use STU23goinsert KC_23(课程号,课程名,开课学期,学时,学分)values('101','计算机基础','1','48',3) goinsert KC_23(课程号,课程名,开课学期,学时,学分)values('102','C语言','2','80',5)goinsert KC_23(课程号,课程名,开课学期,学时,学分)values('103','数据库','4','64',4)goinsert KC_23(课程号,课程名,开课学期,学时,学分)values('201','离散数学','6','64',4) goinsert KC_23(课程号,课程名,开课学期,学时,学分)values('202','计算机网络','7','64',4) goinsert KC_23(课程号,课程名,开课学期,学时,学分)values('301','软件工程','6','64',4) go学生与课程表(XS_KC_XX)学号课程号成绩11004102101 101 8011004102101 102 8911004102101 103 7811004102102 101 5711004102102 102 6711004202103 103 9011004202110 101 8511004202110 102 9111004202221 101 6911004402130 101 7811004402130 103 74学号学号+50use STU23goinsert SX_KC_23(学号,课程号,成绩)values('11004102101','101','80')goinsert SX_KC_23(学号,课程号,成绩)values('11004102101','102','89')goinsert SX_KC_23(学号,课程号,成绩)values('11004102101','103','78')goinsert SX_KC_23(学号,课程号,成绩)values('11004102102','101','57')goinsert SX_KC_23(学号,课程号,成绩)values('11004102102','102','67')goinsert SX_KC_23(学号,课程号,成绩)values('11004202103','103','90')goinsert SX_KC_23(学号,课程号,成绩)values('11004202110','101','85')goinsert SX_KC_23(学号,课程号,成绩)values('11004202110','102','91')goinsert SX_KC_23(学号,课程号,成绩)values('11004202221','101','69')goinsert SX_KC_23(学号,课程号,成绩)values('11004202130','101','78')goinsert SX_KC_23(学号,课程号,成绩)values('11004202130','103','74')goinsert SX_KC_223(学号,课程号,成绩)values('120601303123','301','73')go以下题目均在STUxxxx(学生管理)数据库中完成。