sql机试1
- 格式:doc
- 大小:52.00 KB
- 文档页数:2
数据库详细设计ER--图(实体关系图)数据表设计stuInfo(学生信息表)stuMarks(学生成绩表)表-视图(stuInfo(学生信息表))(stuMarks(学生成绩表))创建数据库create database DBStuon primary(NAME='stuDB_data',FILENAME='D:\project\stuDB_data.mdf',SIZE=10Mb,MAXSIZE=100Mb,FILEGROWTH=15%)log on(NAME='stuDB_log',FILENAME='D:\project\stuDB_log.ldf',SIZE=2MB,FILEGROTH=2MB)T-SQL创建数据表USE DBStuGO--创建stuInfo学生信息表Create Table stuInfo(stuName varchar(20) not null,stuNo varchar(10) not null primary key,stuSex varchar(4) not null,stuAge int not null,stuSeat int identity(1,1) ,stuAddress text)Create Table stuMarks(examNo varchar(15) not null primary key,stuNo varchar(10) not null,writtenExam int,labExam int)创建表约束GO--设置stuInfo表学号必须为MSD07XX格式Alter Table stuMarks add constraint CK_stuNo CHECK (stuNo like ‘MSD07[0-9][0-9]’)--性别只能是男或女Alter table stuInfo add constraint CK_stuSex CHECK (stuSex in(‘男’,’女’))--设置默认性别为男Alter table stuInfo add constraint DF_stuSex DEFAULT (‘男’) for stuSex--年龄必须在15-50岁之间Alter table stuInfo add constraint CK_stuAge CHECK (stuAge Between 15 And 50)--设置默认地址为“地址不详”Alter table stuInfo add constraint DF_stuAddress default (‘地址不详’) for stuAddress--为stuMarks表中stuNo添加外键约束Alter table stuMarks add constraint FK_stuNo FOREIGN KEY(stuNo) REFERENCES stuInfo(stuNo)--设置考号的格式必须为E200707XXXXAlter Table stuMarks add constraint CK_examNo CHECK(examNo like ‘E200707[0-9][0-9][0-9][0-9]’)--设置writtenExam值为0-100分Alter Table stuMarks add constraint CK_writtenExam CHECK(writtenExam Between 0 And 100)--设置writtenExam默认值为0Alter Table stuMarks add constraint DF_writtenExam DEFAULT (0) for writtenExam--设置labExam值为0-100分Alter Table stuMarks add constraint CK_labExam CHECK(labExam Between 0 And 100)--设置labExam默认值为0Alter Table stuMarks add constraint DF_labExam DEFAULT (0) for labExam插入测试数据insert into stuInfo values('张秋丽','MSD0701','男',18,'北京海淀')insert into stuInfo values('李斯文','MSD0703','女',22,'河南洛阳')insert into stuInfo(stuName,stuNo,stuSex,stuAge) values('李文才','MSD0702','男',31)insert into stuInfo values('欧阳俊雄','MSD0704','男',28,'新疆威武哈') insert into stuMarksvalues('E20070701','MSD0703',80,58)insert into stuMarks values('E20070701','MSD0702',50,99)insert into stuMarks(examNo,stuNo,writtenExam) values('E20070703','MSD0702',65)insert into stuMarks values('E20070704','MSD0701',77,82)--表中非0考分,都提5分Update stuMarks set writtenExam=writtenExam+5 where writtenExam>0 Update stuMarks set writtenExam=100 where writtenExam>100 Update stuMarks set labExam=labExam+5 where labExam>0Update stuMarks set labExam=100 where labExam>100--编写分别查找两表的全部数据的SQL语句Select * from stuInfoSelect * from stuMarks--编写查询男学员名单的SQL语句Select * from stuInfo where stuSex=’男’--编写查询笔试成绩优秀的学员情况的SQL语句(成绩在75~100之间)Select stuName, stuInfo.stuNo, stuSex, writtenExam from stuInfo, stuMarks where writtenExam Between 75 And 100 And stuInfo.stuNo=stuMarks.stuNo--编写统计参加本次考试的学员人数的SQL语句,重复的不统计Select count(stuNo) as 考试人数from stuMarks--编写查询没有通过考试人数的SQL语句(笔试或机试小于60分)Select count(stuNo) as 未通过考试人数from stuMarks where writtenExam<60 or labExam<60--编写统计笔试考试平均分和机试考试平均分的SQL语句(不含补考人员成绩)Select A VG(writtenExam) as 机试平均分, A VG(labExam) as 笔试平均分from stuMarks--编写查询参考学员成绩,显示学号,笔试成绩,机试成绩,笔试机试平均分的SQL语句,(不含补考成绩)Select stuNo, writtenExam, labExam,(writtenExam+labExam)/2 平均分from stuMarks--编写排名次(按平均分从高到低排序),显示姓名、学号、平均分的SQL语句Select stuName, stuInfo.stuNo, (writtenExam+labExam)/2 as 平均分from stuInfo, stuExam order by 平均分DESC--。
SqlServer面试题及答案1.磁盘柜上有14块73G的磁盘,数据库为200G 大小包括日志文件,如何设置磁盘(要说明这14磁盘是怎么用的)?2.有两服务器群集,分别为node1和node2 现在要打win200系统补丁,打完后,要重新启动,如何打补丁,不能影响用户使用(要用群集的术语详细说明)。
3.有一个A 数据库,分别复制到B和C B 要求每次数据更新也同时更新,C 每天更新一次就行,如何制定复制策略!4.有一个order 表,有90个字段,20个索引,15个复合索引,其中有3个索引字段超过10个,如何进行优化5.有一个数据库200G大小,每天增加50M 允许用户随时访问,制定备份策略(详细说明)。
参考答案:1.磁盘柜上有14块73G的磁盘,数据库为200G 大小包括日志文件,如何设置磁盘(要说明这14磁盘是怎么用的)?这个问题应该是考察硬件知识和数据库物理部署。
首先需要知道这些磁盘是否要用于存放数据库备份文件和数据库性能(读/写)要求。
来决定raid的级别。
1)、如果偏重于性能考虑,而且不用存放数据库备份文件的话,考虑使用raid0 1,这样可使用的磁盘容量为:14*73*50%=511G。
2)、如果读/写性能要求不高,而且还比较抠门的话,可以考虑raid5,这样可使用的磁盘容量为:13*73=949G。
至于如何使用应该是说数据库物理文件的部署。
注意说出将tempdb,data file,log file分开存放以减少I/O竞争即可。
其实现在的条带化磁盘一般都会自动将文件分存,人为的分布已经越来越不重要了。
2.有两服务器群集,分别为node1和node2 现在要打win200系统补丁,打完后,要重新启动,如何打补丁,不能影响用户使用(要用群集的术语详细说明)。
这个具体操作有点忘了。
大致是:首先看哪个节点正在使用,通过节点IP(私有)访问另一个空闲节点,为其打上补丁,然后在群集管理器中停止该节点(也可以用命令行方式),重新启动。
sql机试题1.假设有一个名为"employees"的表,其中包含以下列:employee_id、first_name、last_name、department_id。
查询该表中每个部门的员工数量,并按照部门数量进行降序排列。
2.假设有一个名为"orders"的表,其中包含以下列:order_id、customer_id、order_date和total_amount。
查询该表中总金额超过10000元的订单的客户数量。
3.假设有一个名为"products"的表,其中包含以下列:product_id、product_name、category_id和price。
查询该表中每个类别的平均价格。
4.假设有一个名为"students"的表,其中包含以下列:student_id、student_name、grade和score。
查询该表中成绩高于平均分的学生数量。
5.假设有一个名为"customers"的表,其中包含以下列:customer_id、customer_name、email和phone。
查询该表中未提供电子邮件地址或电话号码的客户数量。
6.假设有一个名为"orders"的表,其中包含以下列:order_id、customer_id、order_date和total_amount。
查询该表中总金额超过10000元的订单中,客户数量最多的前三个客户的订单数量。
7.假设有一个名为"employees"的表,其中包含以下列:employee_id、first_name、last_name、department_id和salary。
查询该表中平均薪资最高的前三个部门中的员工数量。
sql基础笔试题及答案一、选择题:1. 在计算机应用中,“计算机辅助设计”的英文缩写为___________。
A. CAD B. CAM C. CAE D. CAT2. 微型计算机中,再分称作中央处理单元(CPU)的就是指___________。
A.运算器和控制器 B.累加器和算术逻辑运算部件(ALU) C.累加器和控制器 D.通用寄存器和控制器3. 计算机系统的“主机”由___________形成。
A.CPU,内存储器及辅助存储器 B.CPU和内存储器C.存放在主机箱内部的全部器件 D.计算机的主板上的全部器件 4. 冯·诺依曼计算机工作原理的设计思想就是___________。
A.程序设计 B.程序存储 c.程序编制D.算法设计 5. 世界上最先同时实现的程序存储的计算机就是___________。
A.ENIAC B.EDSAC C.EDVAC D.UNIVAC6. 通常,在微机中标明的P4或奔腾4是指___________。
A.产品型号 B.主频 C.微机名称 D.微处理器型号7. 连接计算机系统结构的五大基本组成部件一般通过___________。
A.适配器B.电缆 c.中继器 D.总线8. 在计算机领域中通常用主频去叙述___________。
A.计算机的运算速度 B.计算机的可靠性 C.计算机的可以运转性 D.计算机的可扩充性9. 下列计算机接口中,可以直接进行“插拔”操作的是___________。
A.COM B.LPT C.PCI D.USB10. 在来衡量计算机的主要性能指标中,字长就是___________。
A.计算机运算部件一次能处置的二进制数据位数 B.8十一位二进制长度 C.计算机的总线数 D.存储系统的容量11. 在计算机领域中,通常用英文单词“BYTE”来表示___________。
A.字 B.字长 C.二进制位 D.字节12. 在计算机领域中,通常用英文单词“bit”去则表示___________。
国家二级ACCESS机试(VBA数据库编程)模拟试卷1(题后含答案及解析)题型有:1. 选择题选择题1.现有一个已经建好的窗体,窗体中有一命令按钮,单击此按钮,将打开“tEmployee”表,如果采用VBA代码完成,下面语句正确的是A.docmd.openform”tEmployee”B.docmd.openview”tEmployee”C.docmd.opentable”tEmployee”D.docmd.openreport”tEmployee”正确答案:C解析:本题考查VBA中如何打开对象的知识。
在vBA中,打开表的命令格式为:DoCmd.OpenTable表名。
另外还需知道打开查询使用DoCmd.OpenOHerv;打开窗体使用DoCmd.OpenForm;打开报表使用DoCmd.OpenReports;打开视图使用DoCmd.OpenView;关闭窗体和报表使用,DoCmd.Close等。
2.在VBA中,实现窗体打开操作的命令是A.DoCmd.OpenFormB.OpenFormC.Do.OpenFormD.DoOpcn.Form正确答案:A解析:DoCmd.OpenForm为打开窗体命令。
3.在VBA中要打开名为“学生信息录入”的窗体,应使用的语句是A.DoCmd.OpenForm”学生信息录入”B.OpenForm”学生信息录入”C.DoCmd.OpenWindow”学生信息录入”D.OpenWindow”学生信息录入”正确答案:A解析:本题考查VBA中如何打开对象的知识。
在VBA中,打开窗体的命令为:Docmd.OpenForm。
另外还需知道打开表使用命令Docmd.OpenTable:打开报表使用命令Docmd.0penReport;打开查询使用命令Docmd.OpenQuery;关闭窗体和报表使用命令Docmd.Close。
4.下列过程的功能是:通过对象变量返回当前窗体的Recordset属性记录集引用,消息框中输出记录集的记录(即窗体记录源)个数。
国家二级ACCESS机试选择题(查询、窗体)模拟试卷1(题后含答案及解析)题型有:1. 选择题选择题1.SQL语句不能创建的是A.报表B.操作查询C.选择查询D.数据定义查询正确答案:A解析:本题考查SQt,语句的知识。
SQt,语言的功能十分强大,它包括数据定义功能、数据查询功能、数据操纵功能和数据控制功能。
SQL能定义的数据包括表、视图、索引等,不包括报表。
知识模块:查询2.在SQL语言的SELECT语句中,用于实现选择运算的子句是A.FORB.IFC.WHILED.AHIERE正确答案:D解析:FOR与WHILE为VBA语言中的循环语句,IF为VBA语言中的条件语句,而WHERE是SQL语句中的条件语句。
知识模块:查询3.在书写查询准则时,日期型数据应该使用适当的分隔符括起来,正确的分隔符是A.*B.%C.&D.#正确答案:D解析:本题考查常量的知识。
在Access中,日期型常量要求用“#”作为分隔符括起来。
知识模块:查询4.通配符“#”的含义是A.通配任意个数的字符B.通配任何单个字符C.通配任意个数的数字字符D.通配任何单个数字字符正确答案:D解析:通配符#表示通配任何单个数字字符。
知识模块:查询5.若要查询某字段的值为“JSJ”的记录,在查询设计视图对应字段的准则中,错误的是表达式是A.JSJB.JSJ*C.*JSJD.Like”JSJ”正确答案:C解析:本题考查查询设计视图的知识。
在查询设计视图的“准则”行中,要查询的值可以用双引号括起来,也可以不括,还可以使用Like加上通配符来使用,但是通配符不配合Like是无法单独使用的。
知识模块:查询6.查询“书名”字段中包含“等级考试”字样的记录,应该使用的条件是A.Like”等级考试”B.Like”*等级考试”C.Like”等级考试*”D.Like”*等级考试*”正确答案:D解析:通配符*代表匹配零个或多个字符。
知识模块:查询7.下列SQL查询语句中,与下面查询设计视图所示的查询结果等价的是A.SELECT姓名,性别,所属院系,简历FROM tStudWHERE性别=“女”AND 所属院系IN(“03”,”04”)B.SELECT姓名,简历FROM tStudWHERE性别=“女”AND所属院系IN(“03”,”04”)C.SELECT姓名,性别,所属院系,简历FROM tStudWHERE性别=“女”AND 所属院系=“03”OR所属院系=“04”D.SELECT姓名,简历FROM tStudWHERE性别=“女”AND所属院系=“03”OR所属院系=“04”正确答案:B解析:本题考查查询设计视图与SQL查询的知识。
国家二级ACCESS机试(查询)模拟试卷1(题后含答案及解析) 题型有:1. 选择题选择题1.SOL语句不能创建的是A.报表B.操作查询C.选择查询D.数据定义查询正确答案:A解析:本题考查SQL语句的知识。
sQL语言的功能十分强大,它包括数据定义功能、数据查询功能、数据操纵功能和数据控制功能。
SQL能定义的数据包括表、视图、索引等,不包括报表。
2.在SOL语言的SELECT语句中,用于指明检索结果排序的子句是A.FROMB.WHILEC.GROUP BYD.ORDER BY正确答案:D3.在SELECT语句中使用ORDER BY是为了指定A.查询的表B.查询结果的顺序C.查询的条件D.查询的字段正确答案:B解析:本题考查SQL查询语句的知识。
在SQL查询中,Group By用来分组,Order By用来排序。
4.在SOL查询中“GROUP BY”的含义是A.选择行条件B.对查询进行排序C.选择列字段D.对查询进行分组正确答案:D解析:在SQL查询中,Group By用来分组,Order By用来排序。
5.在SQL语言的SELECT语句中,用于实现选择运算的子句是A.FORB.IFC.WHILED.WHERE正确答案:D解析:FOR与wHILE为VBA语言中的循环语句,IF为VBA语言中的条件语句,而WHERE是SQL语句中的条件语句。
6.SQL查询命令的结构是:SELECT…FROM…WHERE…GROUP BY…HA VING…ORDER BY…其中,使用HA VING时必须配合使用的短语是A.FROMB.GROUP BYC.WHERED.ORDER BY正确答案:B解析:HA VING必须跟随GROUP BY使用,它用来限定分组必须满足的条件7.在SQL的SELECT语句中,用于实现选择运算的是A.FORB.WHILEC.IFD.WHERE正确答案:D解析:本题考查SQL中查询语句的知识。
sql server面试题SQL Server是一种关系型数据库管理系统(RDBMS),被广泛应用于企业级应用程序开发和数据管理。
为了帮助您准备就业面试或升职面试,以下是一些常见的SQL Server面试题及其答案。
1. 什么是SQL Server?它的功能是什么?SQL Server是一种由Microsoft开发的关系型数据库管理系统,用于管理和存储数据。
它提供了数据的安全性、完整性和可靠性,并具备高效的数据检索和处理功能。
SQL Server支持多种编程语言和操作系统,并提供了丰富的管理工具和功能,如备份和还原、复制和高可用性。
2. SQL Server中的主要数据类型有哪些?SQL Server支持多种数据类型,包括整数类型(int、bigint、smallint)、浮点数类型(float、real、decimal)、日期和时间类型(datetime、date、time)、字符串类型(varchar、char、text)等。
3. 什么是索引?SQL Server中的索引类型有哪些?索引是一种用于加快数据检索速度的数据结构。
SQL Server中的索引类型包括聚集索引(clustered index)和非聚集索引(non-clustered index)。
聚集索引决定了物理存储顺序,而非聚集索引是一种单独的数据结构,它包含指向实际数据行的指针。
4. 如何优化SQL Server查询性能?优化SQL Server查询性能有多种方法,包括创建适当的索引、使用正确的JOIN操作、避免使用通配符、避免在WHERE子句中对函数进行计算等。
可以使用SQL Server的性能监视器(Performance Monitor)来监视数据库服务器的性能,并采取相应的优化措施。
5. SQL Server中如何执行事务处理?在SQL Server中,可以使用BEGIN TRANSACTION、COMMIT和ROLLBACK语句来执行事务处理。
计算机三级考试《数据库技术》试题及答案计算机三级考试《数据库技术》试题及答案 11[单选题] 在数据库系统中,当数据库的模式改变时,用户程序可以不做改变。
这是数据的( ) 。
A.物理独立性B.存储独立性C.位置独立性D.逻辑独立性参考答案:D2[单选题]Skype是由著名的Kazaa软件的创始人Niklas推出的一款Intemet 即时语音通信软件,它融合的两大技术是VolP和( )。
A.C/SB.IPTVC.B/SD.P2P参考答案:D参考解析:Skype是著名的Kazaa软件的创始人Nildas推出的一款Intemet 即时语音通信软件,它融合的两大技术是VoIP和P2P技术,它主要具有网络电话、实时传信、网站浏览、语音视讯、档案传输、搜寻用户等功能,更有突破防火墙限制的通信技术。
3[填空题] 数据库管理系统中的加锁协议规定了事务的加锁时间、持锁时间和释放锁时间,其中()协议可以完全保证并发事务数据的一致性。
参考解析:三级加锁【解析】三级加锁协议也称为三级封锁协议.,它保证正确地调度事务的并发操作,是事务对数据库对象加锁、解锁必须遵守的一种规则。
在运用x锁和s锁对数据对象加锁时,还需要约定一些规则,例如何时申请x锁或S锁、持锁时间、何时释放等。
4[单选题]操作系统中的下列功能,与硬盘没有直接关系的是哪一种( )。
A.虚拟存储B.进程调度C.文件管理D.SPOOLing技术参考答案:B参考解析:SPOOLing英文为:Simutaneous Peripheral Operations On-Line(同时的外围设备联机操作)它是一种虚拟设备技术,其核心思想是在一台共享设备(通常是高速、大容量磁盘)上模拟独占设备的操作,把一台低速的独占设备改造成为若干台可并行操作的虚拟设备,即把独占设备变成逻辑上的共享设备。
由于这种技术通常是通过高速、大容量的硬盘来实现的,所以它和硬盘有直接的关系。
对于操作系统来说,狭义的文件指的是磁盘文件(广义的文件还包括设备及虚拟设备等),文件管理显然和硬盘有直接的关系。
一、建立stuDB数据库
二、一共有三张表,分别是
a)学生表(学号、姓名、性别、年龄、所在系)
b)课程表(课程号、课程名、先修课号、学分)
c)学生选课表(学号、课程号、成绩)
三、分别为每个表插入测试数据
Student数据:
Course表的数据
Sc表的所有数据
四、查询
--1:查询全体学生的姓名、学号和所在系
--2:查询计算机系(IS)所有学生的名单
--3: 查询姓“欧阳”且全名为三个汉字的学生的姓名
--4:查询缺少成绩的学生的学号和相应的课程号(成绩字段值为Null)--5: 查询选修了3号课程的学生的学号和成绩,查询结果按分数降序排列--6:求各个课程号及相应的选课人数
--7:查询与’林燕芳’在同一个系学习的学生姓名。