sql综合测试三
数据库管理人员(SQL server)_3级_操作技能鉴定1.1.1试题单
《数据库管理人员(SQL server)》(三级)试题单试题代码:1.1.1试题名称:应用分析考生姓名:准考证号:考核时间:45 min说明:以下所有内容请填入相应的1.1.1答题卷上一、单项选择(第1题~第18题。
选择一个正确的答案,每题2分,满分36分。
)1.关于SQL Server的数据复制功能,下列说法不正确的是()。
A.SQL Server的数据复制功能支持服务器与服务器之间的复制B.SQL Server的数据复制功能不支持服务器与客户端之间的复制C.利用数据复制功能支持SQL Server数据和SQL Server数据之间的复制D.利用数据复制功能支持SQL Server数据和Oracle数据之间的复制2.利用SQL Server 2005的配置管理器,可以实现对SQL Server 的各种参数配置,但不包括()。
A.配置SQL Server数据库的各种服务B.SQL Server网络配置C.SQL Native Client配置D.SQL Server 使用内存、CPU的配置3.利用SQL Server Management Studio中的活动监视器可以监视服务器上各个进程的情况。
例如可以观察一个SELECT语句的进程执行的情况,但不包括下列()的信息。
A.执行该进程的用户B.所占用的CPU时间、内存空间C.所等待的时间D.语句执行后的查询结果4.SQL Server Profiler可用于捕捉SQL Server服务器中发生的事件,因而常用来监控客户端发送给服务器的语句中的内容,但通常SQL Server Profiler不能用于()。
A.分析数据库服务器中数据表之间的关系B.用图形化的方式查看死锁C.分析应用程序如何使用SQL Server实例D.通过在跟踪中存储查询计划,从而分析查询5.下列语句中()能通过事务来确保数据的一致性。
A.Update emp01 set salary = salary + 100 where eno=1001GoWaitfor delay ‘20:00’BEGIN TRANSACTION T1Update emp01 set salary = salary + 100 where eno=1002GoCOMMIT TRANSACTION T1B.Update emp01 set salary = salary + 100 where eno=1001GoBEGIN TRANSACTION T1Waitfor delay ‘20:00’Update emp01 set salary = salary + 100 where eno=1002GoCOMMIT TRANSACTION T1C.BEGIN TRANSACTION T1Update emp01 set salary = salary + 100 where eno=1001GoWaitfor delay ‘20:00’Update emp01 set salary = salary + 100 where eno=1002GoCOMMIT TRANSACTION T1D.BEGIN TRANSACTION T1Update emp01 set salary = salary + 100 where eno=1001GoWaitfor delay ‘20:00’COMMIT TRANSACTION T1Update emp01 set salary = salary + 100 where eno=1002Go6.SQL Server使用不同的锁模式锁定资源,锁的模式确定了并发事务访问资源的方式,其中()能防止常见的死锁。
sql基础面试题及答案
sql基础面试题及答案1. 什么是SQL?SQL(Structured Query Language)是一种用于管理和操作关系型数据库的标准化语言。
它允许用户从数据库中检索、插入、更新和删除数据,同时还可以定义和管理数据库结构。
2. SQL的分类有哪些?SQL可以分为以下几个方面:- 数据查询语言(Data Query Language,DQL):用于从数据库中检索数据的语言。
常见的DQL命令包括SELECT。
- 数据操纵语言(Data Manipulation Language,DML):用于对数据库中的数据进行操作的语言。
常见的DML命令包括INSERT、UPDATE和DELETE。
- 数据定义语言(Data Definition Language,DDL):用于创建和修改数据库结构的语言。
常见的DDL命令包括CREATE、ALTER和DROP。
- 数据控制语言(Data Control Language,DCL):用于授权和撤销用户对数据库的访问权限的语言。
常见的DCL命令包括GRANT和REVOKE。
3. SELECT语句的基本语法是什么?SELECT语句用于从数据库中检索数据,其基本语法如下:```sqlSELECT 列名1, 列名2, ... FROM 表名 WHERE 条件;```其中,列名指定所需的数据列,表名指定要检索数据的表,WHERE语句用于指定要返回的数据行的条件。
4. 如何在SELECT语句中使用通配符?通配符在SELECT语句中用于匹配不完整或不确定的数据,常见的通配符有两种:- 百分号(%):表示匹配任意数量的字符。
- 下划线(_):表示匹配单个字符。
例如,可以使用以下语句检索以字母“A”开头的所有姓氏:```sqlSELECT * FROM employees WHERE last_name LIKE 'A%';```5. 什么是SQL注入攻击,如何预防?SQL注入攻击是一种利用未正确过滤用户输入数据的漏洞,通过在用户提供的输入中插入恶意SQL代码来执行恶意操作的攻击。
sql考试题及答案
sql考试题及答案sql考试题及答案【篇一:sql试题及答案】题(在每个小题四个备选答案中选出一个正确答案,填在题末的括号中)(本大题共10小题,每小题2分,总计20分)1. ()是位于用户与操作系统之间的一层数据管理软件,它属于系统软件,它为用户或应用程序提供访问数据库的方法。
数据库在建立、使用和维护时由其统一管理、统一控制。
a.dbms b.db c.dbs d.dba2. 下列四项中,不属于sql2005实用程序的是()。
a.对象资源管理器b.查询分析器c.服务管理器d.媒体播放器3. sql server安装程序创建4个系统数据库,下列哪个不是()系统数据库。
a. masterb. modelc. pubd. msdb4. 下列哪个不是sql 数据库文件的后缀。
a..mdf b..ldf c..tif d..ndf5. sql语言允许使用通配符进行字符串匹配的*作,其中?%?可以表示()a.零个字符b.1个字符串c. 多个字符串d. 以上都是6. sql语言中,条件年龄between 15 and 35表示年龄在15至35之间,且( )。
a.包括15岁和35岁b.不包括15岁和35岁c.包括15岁但不包括35岁d.包括35岁但不包括15岁7. sql 的视图是从()中导出的。
a. 基本表b. 视图c. 基本表或视图d. 数据库8. 在sql语言中,建立存储过程的命令是() a、create procedureb、create rulec、create dured、create file9. sql语言中,删除表中数据的命令是( )。
a. delete b. dropc. cleard. remove10. 在ms sql server中,用来显示数据库信息的系统存储过程是( )。
a. sp_dbhelp b. sp_db c. sp_help d. sp_helpdb 二、简答题(16分)1、什么是游标?使用游标的步骤?2、什么是事务?事务的基本属性是什么?三、应用题1、创建一个名字为ks的数据库,包含一个数据文件和一个日志文件,逻辑文件名为ks_data,磁盘文件名为ks_data.mdf,文件初始容量为5mb,最大容量为10mb,文件递增量为1mb;而事务日志文件的逻辑文件名ks_log,磁盘文件名为ks_log.ldf,文件初始容量为1mb,最大容量为5mb,文件递增量为1mb(数据库创建在c:\\server文件夹下)(10分)2、假设ks数据库有以下三张表,请写出下列问题的sql语句:(每题6分,共54分)学生(学号,姓名,年龄,性别)课程(课程号,课程名,任课教师)成绩(学号,课程号,成绩)(1)如何在sql server上创建这三张表;(2)查询刘峰教师所授课程号,课程名;(3)查询年龄大于20岁的所有男同学的学号、姓名;(4)查询王文芳同学选修的所有课程的课程号;(5)查询所有上刘峰老师课程的学生学号;(6)查询所有选修“数据库技术”的学生的学号;(7)向学生表中插入一条记录(?***-*****?,?吴红?,21,?女?);(8)删除三张表中所有学号为***-*****的学生信息;(9)把学号为***-*****的学生的年龄改为22岁;sql server 2005 复习题一、选择题1. sql语言允许使用通配符进行字符串匹配的*作,其中?%?可以表示(c )a 零个字符b 1个字符串c 多个字符串d 以上都是2 如何在已经创建好的表上添加一个外键(a )a alter table 表名add foreign key(键名)reference 关联表(关联键名)b alter table 表名add primary key(键名)reference 关联表(关联键名)c alter 表名add foreign key(键名)reference 关联键名)d alter 表名add primary key(键名)reference 关联表(关联键名)3. 要修改表名为table1的字段field1长度,原为char(10)要求用sql增加长度为char(20),以下语句那个正确(c )a alter table table1 alter field1 char(20)b alter table1 alter column field1 char(20)c alter table table1 alter column field1 char(20)d alter column field1 char(20)4. 下面聚集函数中哪个只能用于计算数值类型的数据(d )a count( ) b min( ) c max( ) d sum( )5.以下哪个关键字用来定义记录在某属性上的约束条件(d )a default b distinct c unique d check6.欲往表中增加一条记录,应该用哪一条sql语句(b )a alter table b insert into table c create table d drop table7.以下哪一个不是逻辑运算符(d )a not b and c or d in8. 在创建表的过程中,哪个关键字用来定义默认值( d ) a distinct b unique c check d default 二、填空题1 数据库技术经历了人工管理阶段,_________和_______三个发展阶段。
sql语句面试题及答案
sql语句面试题及答案一、概述SQL(Structured Query Language)是一种用于管理和操作关系型数据库的标准化语言。
在数据库领域,掌握SQL语句的知识是非常重要的。
本文将提供一些常见的SQL语句面试题及答案,帮助读者更好地了解和掌握SQL语句的应用。
二、查询语句1. 查询所有表的信息答案:SELECT * FROM information_schema.tables;2. 查询指定表的所有字段答案:SELECT COLUMN_NAME FROMinformation_schema.columns WHERE TABLE_NAME='表名';3. 查询指定字段的数据,并按照指定字段进行排序答案:SELECT 列名 FROM 表名 ORDER BY 排序字段 ASC/DESC;4. 使用DISTINCT关键字查询指定字段的不重复数据答案:SELECT DISTINCT 列名 FROM 表名;5. 使用LIMIT关键字查询指定数量的数据答案:SELECT * FROM 表名 LIMIT 数量;三、条件查询1. 查询满足指定条件的数据答案:SELECT * FROM 表名 WHERE 条件;2. 多条件查询答案:SELECT * FROM 表名 WHERE 条件1 AND 条件2;3. 使用LIKE关键字进行模糊查询答案:SELECT * FROM 表名 WHERE 列名 LIKE '关键字%';4. 使用IN关键字查询指定字段值在指定范围内的数据答案:SELECT * FROM 表名 WHERE 列名 IN (值1, 值2, 值3, ...);四、聚合函数1. 求和答案:SELECT SUM(列名) FROM 表名;2. 平均值答案:SELECT AVG(列名) FROM 表名;3. 最大值答案:SELECT MAX(列名) FROM 表名;4. 最小值答案:SELECT MIN(列名) FROM 表名;五、表操作1. 创建表答案:CREATE TABLE 表名 (列名1 数据类型1, 列名2 数据类型2, ...);2. 删除表答案:DROP TABLE 表名;3. 修改表结构答案:ALTER TABLE 表名 ADD 列名数据类型;六、数据操作1. 插入数据答案:INSERT INTO 表名 (列名1, 列名2, ...) VALUES (值1, 值2, ...);2. 更新数据答案:UPDATE 表名 SET 列名=值 WHERE 条件;3. 删除数据答案:DELETE FROM 表名 WHERE 条件;七、表连接答案:SELECT * FROM 表1 INNER JOIN 表2 ON 表1.列名 = 表2.列名;2. 左连接答案:SELECT * FROM 表1 LEFT JOIN 表2 ON 表1.列名 = 表2.列名;3. 右连接答案:SELECT * FROM 表1 RIGHT JOIN 表2 ON 表1.列名 = 表2.列名;八、子查询1. 子查询作为列答案:SELECT (SELECT COUNT(*) FROM 表名) AS 列名 FROM 表名;2. 子查询作为条件答案:SELECT * FROM 表名 WHERE 列名 = (SELECT 列名 FROM 表名 WHERE 条件);九、索引和优化1. 创建索引答案:CREATE INDEX 索引名 ON 表名 (列名);答案:DROP INDEX 索引名 ON 表名;3. 优化查询答案:使用合适的索引、减少不必要的查询、优化查询语句等。
SQL部分模拟试题及答案(第3套)
SQL部分模拟试题(三)一、单项选择题(本大题共12小题,每小题2分,共24分)1、下列四项中,不属于数据库系统特点的是()。
A.数据共享B.数据完整性C.数据冗余度高D.数据独立性高2、数据库是在计算机系统中按照一定的数据模型组织、存储和应用的___________。
()A.文件的集合B.数据的集合C.命令的集合D.程序的集合3、SQL Server的__________是SQL Server2000中主要的管理工具,它是Microsoft Management Console(MMC)的“快捷”方式,提供了对多个SQL Server系统的集中化管理。
()A.查询分析器B.服务管理器C.事件探测器D.企业管理器4、在视图上不能完成的操作是()。
A.更新视图B.查询C.在视图上定义新的表D.在视图上定义新的视图5、下列的SQL语句中,___________不是数据定义语句。
()A.CREATETABLEB.DROPVIEWC.CREATEVIEWD.GRANT6、设关系数据库中一个表S的结构为S(SN,CN,grade),其中SN为学生名,CN为课程名,二者均为字符型;grade为成绩,数值型,取值范围0-100。
若要把“张二的化学成绩80分”插入S中,则可用()。
A. INSERT INTO S VALUES(’张二’,’化学’,80)B.INSERT INTO S VALUES(’张二’,’化学’,’80’)C.ADD INTO S VALUES(’张二’,’化学’,80)D. ADD INTO S VALUES(’张二’,’化学’,’80’)7、假定学生关系是S(SNO,SNAME,SEX,AGE)课程关系是C(CNO,CNAME,CREDIT)学生选课关系是SC(SNO,CNO,GRADE)要查找选修“数据库”课程的女学生的姓名,将涉及到的关系________。
()A.SB.C,SCC.S,SCD.S,C,SC8、SQL语言的数据操纵语句包括SELECT、INSERT、UPDATE、DELETE等。
sql期末试题及答案
sql期末试题及答案一、选择题(每题2分,共20分)1. SQL是一种()。
A. 编程语言B. 数据库管理系统C. 操作系统D. 网络协议答案:B2. 在SQL中,用于查询语句的关键字是()。
A. INSERTB. UPDATEC. SELECTD. DELETE答案:C3. 如果要查询表中所有记录,可以使用()。
A. *B. SELECTC. WHERED. FROM答案:A4. 在SQL中,用于更新表中数据的关键字是()。
A. INSERTB. UPDATEC. SELECTD. DELETE5. 下列哪个选项不是SQL中的聚合函数?()A. COUNTB. AVGC. MAXD. DISTINCT答案:D6. SQL中的GROUP BY子句用于()。
A. 排序结果B. 过滤结果C. 聚合数据D. 选择数据答案:C7. 在SQL中,用于删除表中数据的关键字是()。
A. INSERTB. UPDATEC. DELETED. DROP答案:C8. 如果要创建一个新的数据库,应该使用哪个SQL语句?()A. CREATE DATABASEB. CREATE TABLEC. INSERT INTOD. SELECT答案:A9. 在SQL中,用于创建新表的关键字是()。
B. INSERTC. SELECTD. DROP答案:A10. SQL中的主键(PRIMARY KEY)用于()。
A. 标识唯一的记录B. 存储数据C. 排序数据D. 过滤数据答案:A二、填空题(每题3分,共15分)1. 在SQL中,使用________语句可以删除一个表。
答案:DROP TABLE2. 要查询表中所有列的数据,可以使用________关键字。
答案:SELECT *3. 在SQL中,使用________子句可以指定查询结果的返回顺序。
答案:ORDER BY4. 要插入新的数据行到表中,可以使用________语句。
答案:INSERT INTO5. 使用________关键字可以创建一个新的数据库。
Sql高级综合测试试题
Sql⾼级综合测试试题**学院课程考试试卷课程名称:《SQLServer :数据库设计和⾼级查询》(A )卷年级:班级:姓名:_______________ 学号:_________________ 考试(考查)闭卷1. 下列哪个SQL 语句属于DDL 语句( A )。
A. Create (DDL :create drop truncate ) B. Select (DML: insert update delete select) C. Grant (DCL:grant rovoke ) D. Insert2. SQL Server 2008 的BEGIN TRANS 和COMMITTRANS,ROOLBACK TRANS 语句可⽤在( BD )中来⽀持操作的事务特性。
【选两项】 A. Select 语句B. 存储过程C. /doc/2c159297a517866fb84ae45c3b3567ec112ddc4a.html 连接对象的Transaction 属性D. 触发器3. 在SQL Server2008数据库中,从Product 表中查询出Price (价格)⾼于Pname (产品名称)为“⽹通IP 电话卡”的所有记录中的最⾼价格的查询语句是( D )。
A. SELECT * FROM Product WHERE max(Price)>’⽹通IP 电话卡’B. SELECT * FROM Product WHERE Price>(SELECT max (*)FROM Product WHERE Pname=’ ⽹通IP 电话卡’)C. SELECT * FROM Product WHERE EXISTS Pname=’⽹通IP 电话卡’D. SELECT * FROM Product WHERE Price>(SELECT max (Price )FROM Product WHERE Pname=’ ⽹通IP 电话卡’)中,声明⼀个最多可以存储10个字符的变 B )。
sql 面试题及答案
sql 面试题及答案在以下文章中,我将为您提供一些常见的SQL面试题以及它们的答案。
这些问题涵盖了SQL的基本概念、语句和技巧。
希望这些问题和答案能够帮助您在SQL面试中取得好成绩。
问题1:什么是SQL?答案:SQL是Structured Query Language(结构化查询语言)的缩写,是一种用于数据库管理系统的标准查询语言。
它用于存储、操纵和检索关系型数据库中的数据。
SQL语言具有简单、高效和功能强大的特点,广泛应用于各种数据库平台。
问题2:什么是数据库?答案:数据库是一个有组织的数据集合,用于存储和管理数据。
它可以是一个文件、一组文件或是一个完整的数据库管理系统。
数据库将数据以表格的形式进行组织,并使用关系模型来建立不同表之间的关系。
问题3:什么是关系型数据库?答案:关系型数据库是基于关系模型的数据库。
它使用表格(也称为关系)来存储和管理数据。
关系型数据库的数据以行和列的形式存储,其中每行代表一个记录,每列代表一种数据类型。
关系型数据库的一个重要特点是表格之间可以建立关系,并通过使用主键和外键来连接数据。
问题4:什么是主键?答案:主键是表中用来唯一标识每个记录的一列或一组列。
它的值必须在表中是唯一且非空的。
主键可以用于在表之间建立关系,也可以用于快速访问表中的数据。
问题5:什么是外键?答案:外键是一个表中的字段,它用于建立该表与其他表之间的关系。
外键是其他表的主键,在被引用表中的外键列中存储了其所引用表中的主键值。
通过外键,可以在多个表之间建立引用完整性约束,并实现表之间的数据关联和一致性。
问题6:什么是索引?答案:索引是一个特殊的数据结构,用于加快对表中数据的检索速度。
它通过创建一个排序的数据结构来提高访问表中数据的效率。
索引可以根据一个或多个列来创建,并可以根据这些列进行排序和过滤。
问题7:请解释SQL中的SELECT语句。
答案:SELECT语句用于从表中检索数据。
它可以从一个或多个表中选择所需的列,并根据条件过滤数据。
SQL试题(附答案)
《SQL 数据库管理与开发教程与实训》试题<A 卷>一、单项选择题<每小题1分,共10分>1.下列四项中,不属于数据库特点的是〔 C 〕.A.数据共享B.数据完整性C.数据冗余很高D.数据独立性高2.下列四项中,不属于SQL2000实用程序的是〔 D 〕.A.企业管理器B.查询分析器C.服务管理器D.媒体播放器3.SQL Server 安装程序创建4个系统数据库,下列哪个不是〔 C 〕系统数据库.4.〔 A 〕是位于用户与操作系统之间的一层数据管理软件,它属于系统软件,它为用户或应用程序提供访问数据库的方法.数据库在建立、使用和维护时由其统一管理、统一控制.A .DBMSB .DBC .DBSD .DBA 5.在SQL 中,建立表用的命令是 < B >. A.CREATE SCHEMAB.CREATE TABLE C.CREATE VIEWD.CREATE INDEX6.SQL 语言中,条件年龄 BETWEEN 15 AND 35表示年龄在15至35之间,且< A >.A.包括15岁和35岁B.不包括15岁和35岁C.包括15岁但不包括35岁D.包括35岁但不包括15岁7.下列四项中,不正确的提法是< C >.A.SQL 语言是关系数据库的国际标准语言B.SQL 语言具有数据定义、查询、操纵和控制功能C.SQL 语言可以自动实现关系数据库的规范化D.SQL 语言称为结构查询语言8.在MS SQL Server 中,用来显示数据库信息的系统存储过程是< D >.A. sp_dbhelpB. sp_dbC. sp_helpD. sp_helpdb9.SQL 语言中,删除表中数据的命令是< A >.A. DELETEB. DROPC. CLEARD. REMOVE10.SQL 的视图是从〔 C 〕中导出的.A. 基本表B. 视图C. 基本表或视图D. 数据库三、填空题<每空1分,共20分>1.数据库系统具有数据的_外模式___、_模式________和内模式三级模式结构.2.SQL Server 2000局部变量名字必须以_________开头,而全局变量名字必须以_________开头.3.语句 select ascii<'D'>, char<67> 的执行结果是:_______68__和____C_____.4.语句 select lower<'Beautiful'> , rtrim<'我心中的太阳 '> 的执行结果是:_____beautiful_______和__我心中的太阳________.5.选择运算是根据某些条件对关系做______分割;投影是根据某些条件对关系做______分割.6.关系运算主要有________、________和连接.7.完整性约束包括______完整性、______完整性、参照完整性和用户定义完整性.8.在SQL Server 2000中,数据库对象包括__表____、_视图_____、触发器、过程、列、索引、约束、规则、默认和用户自定义的数据类型等.9.语句 select day<'2004-4-6'>, len<'我们快放假了.'> 的执行结果是:_6________和________7_.10.语句 select round<13.4321,2>, round<13.4567,3>的执行结果是:_13.4300________和_______13.4570__.五、设计题<共50分>现有关系数据库如下:数据库名:我班同学数据库同学表<学号 char<6>,##,性别,年龄,民族,##号,宿舍号>宿舍表<宿舍号 char<6>,宿舍 >用SQL语言实现下列功能的sql语句代码:2.创建数据表[宿舍表]代码<3分>;宿舍表<宿舍号 char<6>,宿舍 >要求使用:主键<宿舍号>、宿舍:以633开头的7位同学表<学号 char<6>,##,性别,年龄,民族,##号,宿舍号>要求使用:主键<学号>、外键<宿舍号>、默认<民族>、非空<民族,##,年龄>、唯一<##号>、检查<性别>4.将下列宿舍信息添加到宿舍表的代码<8分>宿舍号宿舍101 6331157102 6331777修改宿舍号为101的宿舍:6331158删除宿舍号为102的宿舍信息5.创建视图[同学表视图]代码<5分>;同学表视图<学号, ##, 性别, 年龄, 民族, ##号, 宿舍号, 宿舍 >7.从同学表中查询女同学的最大年龄、最小年龄、平均年龄.<5分>8.创建带参数的存储过程[某宿舍同学]:##, 性别, 宿舍执行此过程,查询'101'宿舍情况 <8分>9.设置一SQL身份验证的用户账户:登录名:U班主任,密码:888,数据库用户名:U读者,权限:可查询查询本数据库中所有表、视图、内嵌表值函数的数据,执行所有的存储过程.请写出账户、权限设置的T_SQL脚本.<9分>一、三、《SQL数据库管理与开发教程与实训》试题<B卷>马建鹏老师一、单项选择题<每小题1分,共10分>1.〔〕是位于用户与操作系统之间的一层数据管理软件,它属于系统软件,它为用户或应用程序提供访问数据库的方法.数据库在建立、使用和维护时由其统一管理、统一控制.A.DBMSB.DBC.DBSD.DBA2.下列四项中,不属于SQL2000实用程序的是〔〕.A.企业管理器B.查询分析器C.服务管理器D.媒体播放器3.SQL Server安装程序创建4个系统数据库,下列哪个不是〔〕系统数据库.A. masterB. modelC. pubD. msdb4.下列哪个不是sql 数据库文件的后缀.A..mdfB..ldfC..tifD..ndf5.数据定义语言的缩写词为 < >.6.SQL语言中,条件年龄 BETWEEN 15 AND 35表示年龄在15至35之间,且< >.A.包括15岁和35岁B.不包括15岁和35岁C.包括15岁但不包括35岁D.包括35岁但不包括15岁7.SQL的视图是从〔〕中导出的.A. 基本表B. 视图C. 基本表或视图D. 数据库8.在SQL语言中,建立存储过程的命令是<>A、CREATE PROCEDUREB、CREATE RULEC、CREATE DURED、CREATE FILE9.SQL语言中,删除表中数据的命令是< >.A. DELETEB. DROPC. CLEARD. REMOVE10.在MS SQL Server中,用来显示数据库信息的系统存储过程是< >.A. sp_dbhelpB. sp_dbC. sp_helpD. sp_helpdb三、填空题<每空1分,共20分>1.SQL Server 2000局部变量名字必须以_________开头,而全局变量名字必须以_________开头.2.语句 select ascii<'D'>, char<67> 的执行结果是:_________和_________.3.语句 select lower<'Beautiful'> , rtrim<'我心中的太阳 '> 的执行结果是:____________和___________.4.选择运算是根据某些条件对关系做______分割;投影是根据某些条件对关系做______分割.5.关系运算主要有________、________和连接.6.完整性约束包括_______完整性、______完整性、参照完整性和用户定义完整性.7.T-SQL 语言中,有_________运算、字符串连接运算、比较运算和_________运算.8.语句 select day<'2004-4-6'>, len<'我们快放假了.'> 的执行结果是:_________和_________.9.语句 select floor<17.4>, floor<-214.2>, round<13.4382,2>, round<-18.4562,3>的执行结果是: _________、_________、_________和_________.五、设计题<共45分>现有关系数据库如下:数据库名:学生成绩数据库学生信息表<学号 char<6>,##,性别,民族,##号>课程信息表<课号 char<6>,名称>成绩信息表<ID,学号,课号,分数>用SQL语言实现下列功能的sql语句代码.1.创建数据库[学生成绩数据库]代码<2分>.2.创建数据表[课程信息表]代码;〔2分〕课程信息表<课号 char<6>,名称>要求使用:主键<课号>、非空<名称>3.创建数据表[学生信息表]代码;〔4分〕学生信息表<学号 char<6>,##,性别,民族,##号>要求使用:主键<学号>、默认<民族>、非空<民族,##>、唯一<##号>、检查<性别>4.创建数据表[成绩信息表];〔5分〕成绩信息表<ID,学号,课号,分数>要求使用:外键<学号,课号>、检查<分数>,自动编号<ID>5.将下列课程信息添加到课程信息表的代码〔8分〕课号名称100101 西班牙语100102 大学英语修改课号为100102的课程名称:专业英语删除课号为100101的课程信息6.创建视图[成绩信息表视图]的代码;〔5分〕成绩信息表视图<学号,##,课号,课程名称,分数>7.从学生信息表中查询姓刘的女同学的情况:##、性别、民族.〔2分8.查询有一门或一门以上课程成绩小于60分的所有学生的信息,包括学号、##.〔4分〕9.创建带参数的存储过程[某门课程高低均分]、执行该过程的代码〔7分〕存储过程功能:查询某门课程的最高分、最低分、平均分;执行该过程,查询所有修’专业英语’这门学生的最高分、最低分、平均分;10设置一SQL身份验证的用户账户:登录名:U院长,密码:888,数据库用户名:U读者,权限:可查询查询本数据库中所有表、视图、内嵌表值函数的数据,执行所有的存储过程.请写出账户、权限设置的T_SQL脚本.<6分>一、五、《SQL数据库管理与开发教程与实训》试题<C卷>杜兆将老师一、单项选择题<每小题1分,共10分>1.下列四项中,不属于数据库特点的是〔〕.A.数据共享B.数据完整性C. 数据冗余很高D.数据独立性高2. 目前〔〕数据库系统已逐渐淘汰了网状数据库和层次数据库,成为当今最为流行的商用数据库系统.A.关系B.面向对象C.分布3. 数据库设计中的概念结构设计的主要工具是〔〕.A.数据模型B.E—R模型 C.新奥尔良模型D.概念模型4. 〔〕是位于用户与操作系统之间的一层数据管理软件,它属于系统软件,它为用户或应用程序提供访问数据库的方法.数据库在建立、使用和维护时由其统一管理、统一控制.A.DBMSB.DBC.DBSD.DBA5. 在SQL中,建立视图用的命令是 < >.A.CREATE SCHEMAB.CREATE TABLEC.CREATE VIEWD.CREATE INDEX6. SQL语言中,条件"年龄BETWEEN 20 AND 30"表示年龄在20至30之间,且< >.A.包括20岁和30岁B.不包括20岁和30岁C.包括20岁但不包括30岁D.包括30岁但不包括20岁8. 在MS SQL Server中,用来显示数据库信息的系统存储过程是< >.A. sp_dbhelpB. sp_dbC. sp_helpD. sp_helpdb9. SQL语言中,删除一个表的命令是< >.A. DELETEB. DROPC. CLEARD. REMOVE10.SQL的视图是从〔〕中导出的.A.基本表B. 视图 C. 基本表或视图D. 数据库三、填空题<每空1分,共20分>1. 数据库系统具有数据的___________、_________和_________三级模式结构.2. SQL Server 2000局部变量名字必须以_________开头,而全局变量名字必须以_________开头.3. 语句 select ascii<'C'>, char<68>, len<'你是BigTiger '> 的执行结果是:_________、_________和_________.4. 语句select upper<'beautiful'> ,ltrim <'我心中的太阳'> 的执行结果是:____________和___________.5. 关系运算主要有________、________、________.6. 选择运算是根据某些条件对关系做______分割;投影是根据某些条件对关系做______分割.7. 索引的类型主要有__和_ __.8. 在SQL Server 2000中,数据库对象包括数据表、______、______、触发器、规则、默认和用户自定义的数据类型等.五、设计题<共50分>现有关系数据库如下:数据库名:学生成绩数据库学生表<学号 char<6>,##,性别,民族,##号>课程表<课号 char<6>,名称>成绩表<ID,学号,课号,分数>用SQL语言实现下列功能的sql语句代码:1.创建数据库[学生成绩数据库]代码<2分>;create database [学生成绩数据库]gouse [学生成绩数据库]go2.创建[课程表]代码<2分>;课程表<课号 char<6>,名称>CREATE TABLE 课程表〔course CHAR<6>,PRIMARY KEY,Name CHAR<6>,NOT NULL,〕;要求使用:主键<课号>、非空<名称>3.创建[学生表]代码<6分>;学生表<学号 char<6>,##,性别,民族,##号>要求使用:主键<学号>、默认<民族>、非空<民族,##>、唯一<##号>、检查<性别>4.创建[成绩表]代码<4分>;成绩表<ID,学号,课号,分数>要求使用:主键<课号>、外键<成绩表.学号,成绩表.课号>、检查<分数>,自动编号<ID>5.将下列课程信息添加到课程表的代码<8分>课号课程名称100001 大学语文100002 大学英语100003 西班牙语修改课号为100002的课程名称:实用英语删除课号为100003的课程信息6.写出创建:成绩表视图<学号,##,课号,课程名称,分数>的代码;<4分>7.写出创建:某门课程成绩内嵌表值函数以与检索的代码;<6分>检索:所有修实用英语这门学生的成绩;8.写出创建:某门课程高低均分计算某门课程成绩最高分、最低分、平均分存储过程以与执行的代码;<6分>执行:所有修实用英语这门学生的最高分、最低分、平均分;9.检索姓李的女同学的情况:##、性别、民族.<2分>10.检索有一门或一门以上课程成绩大于等于90分的所有学生的信息,包括学号、##.<4分>11.设置一SQL身份验证的账户:登录名:U领导,密码:888,数据库用户名:U读者,权限:可查询查询本数据库中所有表、视图、内嵌表值函数的数据.请写出账户、权限设置的T_SQL脚本.<6分>《SQL数据库管理与开发教程与实训》试题<C卷>参考答案一、1.C 2.A 3. B 4.A 5.C 6.A 7. 8.D 9.B 10.C二、1. N 2.N 3.Y 4.N 5.N 6.N 7. Y 8.N 9.N 10.Y三、1. 外模式、模式、内模式.2. ,3. 67, D, 124. BEAUTIFAL,我心中的太阳5. 选择、投影、连接.6. 水平, 垂直7. 聚簇索引非聚簇索引8. 视图、存储过程五、设计题1.create database [学生成绩数据库]gouse [学生成绩数据库]go2. create table 学生表<[学号] char<6> primary key,[##] nchar<4> not null,[性别] nchar<1> check<[性别] in <'男', '女'>>,[民族] nchar<8> default '汉族' not null,[##号] char<18> unique>3. create table 课程表<[课号] char<6> primary key,[名称] char<40> not null>4. create table 成绩表<ID integer IDENTITY<1, 1>,[学号] char<6> references 学生表<学号>,[课号] char<6> references 课程表<课号>,[分数] integer check<[分数] between 0 and 100>>5.insert 课程表 values<'100001', '大学语文'>insert 课程表 values<'100002', '大学英语'>insert 课程表 values<'100003', '西班牙语'>update课程表 set 名称='实用英语' where 课号='100002'delete课程表 where 课号='100003'6. create view [成绩表视图] asselect 成绩表.学号,##,成绩表.课号,名称课程名称,分数from 成绩表,学生表,课程表where 成绩表.学号=学生表.学号and 成绩表.课号=课程表.课号create view [成绩表视图] asselect 成绩表.学号,##,成绩表.课号,名称课程名称,分数from 成绩表 join 学生表 on 成绩表.学号=学生表.学号join 课程表 on 成绩表.课号=课程表.课号7. create function [某门课程成绩]<课程名 varchar<40>>returns table asreturn <select 学号,##,课程名称,分数 from 成绩表视图where 课程名称=课程名>create function [某门课程成绩]<课程名 varchar<40>>returns table asreturn <select * from 成绩表视图where 课程名称=课程名>select * from [某门课程成绩]<'实用英语'>8.create procedure [某门课程高低均分]课程名 varchar<40> asselect 课程名称, 最高分=max<分数>、最低分=min<分数>、平均分=avg<分数> from 成绩表视图where 课程名称 = 课程名execute [某门课程高低均分] '实用英语'9.select ##, 性别, 民族 from 学生表 where ## like '李%' and 性别='女'10. select 学号, ## from 学生表 where学号 in <select distinct 学号 from成绩表 where分数>=90>11.use [学生成绩数据库]exec sp_addlogin 'U领导', NULL, '学生成绩数据库', '简体中文'exec sp_password NULL, '888', 'U领导'exec sp_grantdbaccess 'U领导', 'U读者'exec sp_addrolemember 'db_datareader', 'U读者'use [学生成绩数据库]exec sp_addlogin 'U领导', '888', '学生成绩数据库'exec sp_grantdbaccess 'U领导', 'U读者'exec sp_addrolemember 'db_datareader', 'U读者'《SQL数据库管理与开发教程与实训》试题<D卷>刘占文老师一、单项选择题<每小题1分,共10分>1.数据库应用系统是由数据库、数据库管理系统〔与其开发工具〕、应用系统、〔〕和用户构成.A.DBMSB.DBC.DBSD.DBA2.数据库管理系统的英文缩写是〔〕.A.DBMSB.DBSC.DBAD.DB3.在关系运算中,选取符合条件的元组是〔〕运算.A.除法B.投影C.连接D.选择4.数据库设计中的逻辑结构设计的任务是把〔〕阶段产生的概念数据库模式变换为逻辑结构的数据库模式.A.需求分析B.物理设计C.逻辑结构设计D.概念结构设计5.一个规范化的关系至少应当满足〔〕的要求.A.一范式B.二范式C.三范式D.四范式6.在实际数据库设计中,"学号"通常作为〔〕存在.A.数据结构B.数据存储C.数据项目D.处理过程7.SQL Server 2000中删除表中记录的命令是〔〕.A.DELETEB.SELECTC.UPDATED.DROP8.运行命令SELECT ASCII〔‘Alklk’〕的结果是〔〕.A.48B.32C.90D.659.在SQL中,建立视图用的命令是 < >.A.CREATE SCHEMAB.CREATE TABLEC.CREATE VIEWD.CREATE INDEX10.在MS SQL Server中,用来显示数据库信息的系统存储过程是< >.A. sp_dbhelpB. sp_dbC. sp_helpD. sp_helpdb三、填空题<每空1分,共20分>1.数据库三个要素是__________、__________和_____________.2. 语句 select year<'1931-9-18'> 的执行结果是____________.3.__________是指保证指定列的数据具有正确的数据类型、格式和有效的数据范围.4.__________是特殊类型的存储过程,它能在任何试图改变表中由触发器保护的数据时执行.5.事务<Transaction>可以看成是由对数据库的若干操作组成的一个单元,这些操作要么______,要么________<如果在操作执行过程中不能完成其中任一操作>.6. SQL Server 2000 采用的身份验证模式有________________模式和________模式.7.用户访问SQL Server数据库时,经过了两个_______验证和________验证安全验证阶段.8.SQL Server 2000提供的数据库备份方法有_______数据库备份和________数据库备份、____________备份和________________备份.9.SQL Server代理主要由______、______和警报来组成.10.SQL Server复制把服务器分为______服务器、______服务器和订阅服务器三种. 五、设计题<1—6题每空2分,第7题10分,共40分>1.计算1+2+3+……+100的和,并使用PRINT显示计算结果.DECLARE I int,sum int,csum char<10>SELECT I=1,sum=0WHILE I<=________BEGINSELECT sum= __________SELECT I=I+1ENDSELECT csum=convert<char<10>,sum>__________ ’1+2+3+……+100=’+ csum2.使用SQL语句创建一个班级表CLASS,属性如下:CLASSNO,DEPARTNO,CLASSNAME;类型均为字符型;长度分别为8、2、20且均不允许为空.CREATE ________ CLASS<CLASSNO ______<8> NOT NULL,DEPARTNO CHAR <2> NOT NULL,CLASSNAME CHAR <____> NOT NULL〕3.声明一个名为CRSCOURSE的游标,并利用游标遍历,显示整个结果集.USE XKDECLARE COUNO VARCHAR<3>,COUNAME VARCHAR<20>_________________________FORSELECT COUNO,COUNAME FROM COURSE ORDER BY COUNO_________________________FETCH NEXT FROM CRSCOURSE INTO COUNO,COUNAMEWHILE FETCH_STATUS=0BEGINPRINT ’课程号:’+ COUNO +’课程名称:’+ CouNameFETCH NEXT FROM CRSCOURSE INTO COUNO,COUNAMEEND_________________________DEALLOCATE CRSCOURSSE4.使用SQL语句在XK数据库中创建一个名为V_STUDENT的视图,该视图仅查看"STUDENT"表中"00电子商务"班的学生信息.USE XKCREATE ____________ V_STUDENTASSELECT *FROM ____________WHERE CLASSNO=’20000001’5.使用SQL语句在XK数据库中创建一个名为P_STUDENT的存储过程,该存储过程返回"STUDEND"表中所有班级代码为200000001的记录.USE XKCREATE ____________ P_STUDENTASSELECT *____________ STUDENTWHERE CLASSNO=’20000001’6.创建触发器TEST,要求每当在STUDENT表中修改数据时,将向客户端显示一条"记录已修改"的消息.USE XK_________________ON STUDENT_________________ASPRINT ‘记录已修改’7.定义事务向[学生]数据库的[选课表]中插入学号=‘20030021’的多条记录,并检验若报名课程超过4门,则回滚事务,即报名无效,否则成功提交.选课表<学号,课号,报名号>假设要插入的记录为以下三条:‘20030021’,‘01’,1 ‘20030021’,‘02’,2 ‘20030021’,‘03’,3根据以上要求编写程序,并指出本题定义的事务是否成功提交.《SQL数据库管理与开发教程与实训》试题<D卷>参考答案一、单项选择题1.D 2.A 3.D 4.D 5.C 6.C 7.D 8.D 9.C 10.D二、判断题1.N 2.N 3.N 4.Y 5.Y 6.N 7.Y 8.N 9.Y 10.N三、填空题1.数据结构、数据操作、完整性约束2.19313.域完整性4.触发器5.都完成、都取消6.Windows身份验证、混合7.身份、权限8.完整、差异、事务日志、文件和文件组9.操作员、作业10.发布、分发五、设计题1.100 sum+i print2.table char 203.Declare crscourse cursoropen crscourseclose crscourse4.viewstudent5.procedurefrom6.Alter trigger testfor update7.Use 学生Begin transactionInsert 选课表<学号,课程号,报名号> values<‘20030021’,‘01’,1>Insert 选课表<学号,课程号,报名号> values<‘20030021’,‘02’,2>Insert 选课表<学号,课程号,报名号> values<‘20030021’,‘03’,3>Declare num intSet num=<select count<*> from 选课表 where 学号=‘20030021’>If num>4beginRollback transactionPrint ‘超过报名门数!’endElseBeginmit transactionPrint ‘报名成功!’endgo本题定义的事务成功提交.《SQL数据库管理与开发教程与实训》试题<E卷>刘占文老师三、填空题<每空1分,共20分>1.SQL语言主要由组成.2.SQLServer2000采用的身份验证模式有Windows身份验证模式和_________模式.3.语句 SELECT<7+3>*4-17/<4-<8-6>>+99%4的执行结果是_____________.4. ________是由一个或多个数据表〔基本表〕或视图导出的虚拟表.5._____________用于保证数据库中数据表的每一个特定实体的记录都是惟一的.6.索引的类型有______________和非聚集索引.7._________是已经存储在SQL Server服务器中的一组预编译过的Transact-SQL语句.8.触发器定义在一个表中,当在表中执行________、________或delete操作时被触发自动执行.9.事务的ACID属性是指________性、________性、_______性和_______性.10.数据库管理系统的安全性通常包括两个方面,一是指数据________的安全性,二是指数据_______的安全性.11.SQL Server代理主要由________、操作员和________来组成.12.SQL Server复制有快照复制、________复制和________复制3种类型.五、设计题<每小题5分,共40分>现有关系数据库如下:数据库名:学生成绩数据库用SQL语言实现下列功能的sql语句代码:1.创建数据库[学生成绩数据库]代码<2分>;2.创建[课程表]代码<2分>;课程表<课号 char<6>,名称>要求使用:主键<课号>、非空<名称>3.创建[学生表]代码<2分>;学生表<学号 char<6>,##,性别,民族>要求使用:主键<学号>、默认<民族>、非空<民族,##>、检查<性别>4.创建[成绩表]代码<2分>;成绩表<学号,课程号,分数>要求使用:外键<成绩表.学号,成绩表.课程号>、检查<分数>5.将下列课程信息添加到课程表中课号课程名称100001 大学语文100002 大学英语6.写出创建成绩表视图<学号,##,课程号,课程名称,成绩>的代码;7.写出创建分数存储过程用于计算某门课程成绩最高分、最低分、平均分8.检索姓李的女同学的信息:##、性别、民族.9.设置SQL身份验证的账户:登录名:U领导密码:888数据库用户名:U读者权限:可查询查询本数据库中所有表的数据.10.《SQL数据库管理与开发教程与实训》试题<E卷>参考答案一、单项选择题1.C 2.A 3.D 4.D 5.B 6.C 7.A 8.D 9.B 10.D二、判断题1.N 2.Y 3.Y 4.N 5.N 6.Y 7.Y 8.N 9.N 10.Y三、填空题1.数据定义语言<DDL>、数据操作语言<DML>2.混合3.354.视图5.实体完整性6.聚集索引7.存储过程8.insert、update9.原子、一致、独立、持久10.访问、运行11.作业、警报12.事务、合并五、设计题1.create database [学生成绩数据库]gouse [学生成绩数据库]go2. create table课程表<[课程号] char<6> primary key,[课程名称] char<40> not null[任课教师] char<4>>3. create table 学生表<[学号] char<6> primary key,[##] nchar<4> not null,[性别] nchar<1> check<[性别] in <'男', '女'>>,[民族] nchar<8> default '汉族' not null>4. create table成绩表<[学号] char<6> references 学生表<学号>,[课程号] char<6> references 课程表<课号>,[成绩] integer check<[成绩] between 0 and 100>>5.insert 课程表 values<'100001', '大学语文'>insert 课程表 values<'100002', '大学英语'>insert 课程表 values<'100003', '西班牙语'>6.create view [成绩表视图] asselect 学号,##,课程号,课程名称,成绩 from 成绩表,学生表where 成绩表.学号=学生表.学号select 学号,##,课程号,课程名称,成绩 from 成绩表 join 学生表on 成绩表.学号=学生表.学号7.create procedure [分数]课程名 nchar<16> asselect 课程名称, 最高分=max<分数>、最低分=min<分数>、平均分=avg<分数> from 成绩表视图where 课程名称 = 课程名8.select ##, 性别, 民族 from 学生表 where ## like '李%' and 性别='女' 9.use [学生成绩数据库]exec sp_addlogin 'U领导', '888', '学生成绩数据库', '简体中文'exec sp_grantdbaccess 'U领导', 'U读者'exec sp_addrolemember 'db_datareader', 'U读者'10.Begin transactionInsert 成绩表<学号,课程号,分数> values<‘20030021’,’001’,80>Insert 成绩表<学号,课程号,分数> values<‘20030021’,’002’,90>Insert 成绩表<学号,课程号,分数> values<‘20030021’,’003’,80>Insert 成绩表<学号,课程号,分数> values<‘20030021’,’004’,70>Declare num intSet num=<select count<*> from 成绩表 where 学号=‘20030021’>If num>4Rollback transactionElsemit transactiongo《SQL数据库管理与开发教程与实训》试题<F卷>郭鲜凤老师一、单项选择题<每小题1分,共10分>1.SQL Server系统中的所有服务器级系统信息存储于哪个数据库〔〕.A. masterB. modelC. tempdbD. msdb2.下列标识符可以作为局部变量使用〔〕.A. MyvarB. My varC. @MyvarD. @My var3.以下关于主键的描述正确的是〔〕.A.标识表中唯一的实体B.创建唯一的索引,允许空值C.只允许以表中第一字段建立D.表中允许有多个主键4.为数据表创建索引的目的是〔〕.A.提高查询的检索性能B.创建唯一索引C.创建主键D.归类5.下列哪个不是sql 数据库文件的后缀.A..mdfB..ldfC..dbfD..ndf6.在SQL SERVER服务器上,存储过程是一组预先定义并〔〕的Transact-SQL语句.A.保存B.编译C.解释D.编写7.数据定义语言的缩写词为 < >.8.以下关于外键和相应的主键之间的关系,正确的是< >.A.外键并不一定要与相应的主键同名B.外键一定要与相应的主键同名C.外键一定要与相应的主键同名而且唯一D.外键一定要与相应的主键同名,但并不一定唯一9.在数据库设计中使用E-R图工具的阶段是< >.A.需求分析阶段B.数据库物理设计阶段C.数据库实施D.概念结构设计阶段10.在T-SQL语言中,修改表结构时,应使用的命令是〔〕A.UPDATEB. INSERTC. ALTERD. MODIFY三、填空题<每空1分,共30分>1. 目前最常用的数据库有层次数据库、_________数据库和_________数据库,其中_________数据库是目前应用最广泛的一种数据库.2. 关系数据模型的逻辑结构是__________,关系中的列称为________,行称为________.3. 关系数据库模型的数据操作主要包括插入、________、________和________数据.4. SQL、DCL和DML缩写词的意义是___________语言、___________语言和___________语言.5.实体之间的联系类型有三种,分别为________、________和________.6.数据库系统的三级模式结构和两级数据映像确保了数据的________独立性和________独立性.7.SQL Server 2000提供的数据库备份方法有_______数据库备份和________数据库备份、____________备份和________________备份.8.SQL Server代理主要由______、______和_____来组成.9.SQL Server复制把服务器分为______服务器、______服务器和_____服务器三种.10.在SQL中,create view、alter view和drop view命令分别为________、________和________视图的命令.五.设计题<每小题5分,共40分>有一个[学生课程]数据库,数据库中包括三个表:学生表:Student由学号<Sno>、##<Sname>、性别<Ssex>、年龄<Sage>、所在系<Sdept>五个属性组成,记为:Student<Sno,Sname,Ssex,Sage,Sdept>,Sno 为关键字.课程表:Course由课程号<o>、课程名<ame>、先修课号<Cpno>、学分<Ccredit>四个属性组成,记为: Course<o,ame,Cpno,Ccredit> o为关键字.成绩表:SG由学号<Sno>、课程号<o>、成绩<Grade>三个属性组成,记为:SG<Sno,o,Grade> <SNO, O> 为关键字.用SQL语言实现下列功能:1.建立学生表[Student],其中学号属性不能为空,并且其值是唯一的.2.查考试成绩有不与格的学生的学号.3.将学号为05001学生的年龄改为22岁.。
sql测试题和答案.docx
sql测试题和答案# SQL测试题1. 基础查询题- 题目:编写一个SQL查询,从`employees`表中选择所有员工的姓名和员工ID。
- 答案:`SELECT name, employee_id FROM employees;`2. 条件查询题- 题目:从`orders`表中选择所有订单金额超过1000的订单。
- 答案:`SELECT * FROM orders WHERE order_amount > 1000;`3. 排序题- 题目:从`products`表中选择所有产品的名称和价格,并按价格降序排列。
- 答案:`SELECT name, price FROM products ORDER BY price DESC;`4. 聚合函数题- 题目:计算`sales`表中所有销售额的总和。
- 答案:`SELECT SUM(sales_amount) AS total_sales FROM sales;`5. 分组查询题- 题目:从`sales`表中按产品ID分组,并计算每个产品的总销售额。
- 答案:`SELECT product_id, SUM(sales_amount) AStotal_sales_per_product FROM sales GROUP BY product_id;`6. 连接查询题- 题目:查询`customers`表和`orders`表,找出所有客户的姓名和他们下过的订单数量。
- 答案:`SELECT , COUNT(o.order_id) AS order_count FROM customers c JOIN orders o ON c.customer_id =o.customer_id GROUP BY ;`7. 子查询题- 题目:找出`employees`表中工资高于平均工资的员工的姓名和工资。
- 答案:`SELECT name, salary FROM employees WHERE salary > (SELECT AVG(salary) FROM employees);`8. 多表连接查询题- 题目:查询`employees`表和`departments`表,找出所有员工的姓名、部门名称和部门ID。
SQL base 综合测试题(SCME)
--------------------------------------装--------------------------------------订------------------------------线----------------------------------------**学院课程考试试卷课程名称:《SQL Server:使用SQL Server管理和查询数据》(A)卷年级:班级:姓名:_______________ 学号:_________________ 考试(考查) 闭卷1.关于标识列,以下说法正确的是( B )。
A.使用sql语句插入数据时,可以为标识列指定要插入的值。
B.设定标识时,必须同时指定标识种子和标识递增量。
C.若设定标识时,未指定标识递增量,那么使用sql语句插入数据时可以为标识列指定递增值。
D.把主键设定为标识列。
2.以下关于外键的说法正确的是( AC )。
[选两项]A.外键的数据在主表中必须存在B.外键的数据可以为空C.外键中引用的数据,主表可以更改D.外键的数据在主表中可以没有3.SQL数据库可以没有( CD )。
[选两项]A.日志文件B.主要数据文件C.次要数据文件D.帮助文档4.数据完整性是指( D )。
A.数据库中的数据不存在重复B.数据库中所有的数据格式是一样的C.所有的数据全部保存在数据库中D.数据库中的数据能够正确反应实际情况5.表ABC有int型三列A,B,C其中B是自动增长型,C的默认值为‘100’,执行语句insertinto ABC values (200,300)以下说法正确的是( B )。
A.C的值为100B.A的值为200C. B 的值为300D.语法错误,不能正常执行6.SQLServer中自己建立的ACCP数据库属于( A )。
A.用户数据库B.系统数据库C.数据库模版D.数据库管理系统7.假定有一个用户表,表中包含字段:userid (int)、username (varchar)、password(varchar)、等,该表需要设置主键,以下说法正确的是( AB )。
S2 SQL内部测试题3分析和总结
Char(10)
课程号,外键
MID
Char (10)
学生号,外键
Score
int
成绩
请编写T-SQL语句来实现如下功能:
1)查询各个学生语文、数学、英语、历史课程成绩,例如下表:
姓名
语文
数学
英语
历史
张萨
78678976王强8967
84
96
李三
70
87
92
56
李四
80
78
97
66
2)查询四门课中成绩低于70分的学生及相对应课程名和成绩。
学生成绩信息三个表,结构如下:
学生表:Member
字段名称
数据类型
说明
MID
Char(10)
学生号,主键
MName
Char(50)
姓名
课程表:
字段名称
数据类型
说明
FID
Char(10)
课程,主键
FName
Char(50)
课程名
成绩表:Score
字段名称
数据类型
说明
SID
int
自动编号,主键,成绩记录号
3)统计各个学生参加考试课程的平均分,且按平均分数由高到底排序。
4)创立存储过程,分别查询参加1、2、3、4门考试及没有参加考试的学生名单,要求显示姓名、学号。
sql数据库系统原理上机实验(综合版)
《数据库原理》实验指导书《数据库原理》上机实验上机学时:8学时一、上机性质、目的及任务:通过上机实践,配合课堂教学内容加深对数据库的基本概念和基本技术的理解,掌握数据库系统设计的基本思想和基本步骤,熟悉关系数据库的标准语言SQL,并对典型的关系数据库管理系统有较深入的了解,使学生的动手能力有较大的提高。
二、面向专业:计算机类各专业三、实验指导书:见下页四、实验内容:实验一SQL数据定义 (3)实验二SQL简单查询 (6)实验三SQL 复杂查询 (7)实验四SQL 数据更新 (8)实验一SQL数据定义一、实验目的(1)认识几种常见的数据库管理系统,熟悉它们的使用界面;(2)熟练掌握建立数据库和表,向数据库输入数据、修改数据和删除数据的操作。
(3)熟悉SQL数据定义语言(DDL)二、实验内容(1)分别在Access 和SQL SERVER2005 中建立数据库并设计各表,输入多条实际数据,并实现数据的增、删、改操作。
(2)用SQL语言进行基本表结构的定义、修改、删除,索引的建立和删除三、实验步骤:分别在ACCESS数据库管理系统和SQL SERVR 2005环境下利用图形操作界面(非SQL语句)实现以下操作:1、创建用于学生管理的数据库,数据库名为XSGL,包含学生信息,课程信息和选课信息。
数据库XSGL包含下列3 个表:(l)student:学生基本信息。
(2)course:课程信息表。
(3)sc:学生选课表。
各表的结构分别如表1、表2和表3 所示。
表1 学生信息表:student列名数据类型长度完整性约束sno 字符(文本)型8 主键sname 字符(文本)型 4 不为空ssex 字符(文本)型 1sage 整数(数值)型sdept 字符型10表2 课程信息表:course列名数据类型长度完整性约束cno 字符(文本)型 2 主键cname 字符(文本)型30credit 整数(数值)型cpno 字符(文本)型 3表3 学生选课表:sc列名数据类型长度完整性约束sno 字符(文本)型8 主属性,外键cno 字符(文本)型 2 主属性,外键grade 整数(数值)型是提示:在不使用SQL语句创建表的情况下,可通过ACCESS中的关系(菜单—工具—关系)和SQL SERVER 2005中的数据库关系图(数据库节点展开—数据库关系图)实现外键的创建。
SQL模拟考试题及答案1
SQL模拟考试题及答案选择题数据库概念模式产生于数据库系统设计的 _C______ 阶段。
A 、规划B 、需求分析C 、概念设计D 、逻辑设计以下运算符中优先级最低的是( D )。
(A)+(加)(B)=(等于)(C)like (D)=(赋值)在SQL中,SELECT语句的“SELECT TOP 10 ”表示查询结果中 ( A )A.前10条记录B. 后10条记录C. 前10%条记录D. 后10%条记录下列哪些语句用于删除存储过程( C )?A、CREATE PROCEDUREB、CREATE TABLEC、DROP PROCEDURED、其他print round ( 998.88 , 0 ),round(999.99,-1)执行结果是:CA 、 999.00 , 990.00B 、 999.00 , 1000.00C 、 998.00 , 1000.00D 、 999.00 , 999.99下列语句中正确的是 _____B__ 。
表 score(sti_id,names,math,English,VB)A) select stu_id,sum(math) from scoreB) select sum(math),avg(VB) from scoreC) select * ,sum(english) from scoreD) delete * from scoreSELECT语句中与HAVING子句通常同时使用的是( C )子句。
A.ORDER BYB.WHEREC.GROUP BYD.无需配合关系数据模型 ______D_ 。
A) 只能表示实体间的 1 : 1 联系B) 只能表示实体间的 1 : n 联系C) 只能表示实体间的 m : n 联系D) 只能表示实体间的上述 3 种联系SQL Server 2000 企业版可以安装在操作系统上。
C(A)Microsoft Windows 98(B)Microsoft Windows 2000 Professional(C)Microsoft Windows 2000 Server(D)Microsoft Windows XPSQL Server 2000提供了一整套管理工具和实用程序,其中只负责启动、暂停和停止SQL Server的4种服务的是( D )。
SQL测试题
SQL测试题一、问答题1、数据库包含哪些哪几种后缀名的文件必须,这些文件分别存放在什么的信息?主要数据文件(.mdf) 包含数据用户收集的信息,还有数据库其他相关的信息,日志数据文件(.ndf) 存放用户对数据库的增删改查的信息,用于备份恢复使用2、TRUNCATE TABLE命令是什么含义?和DELETE表名有什么区别?TRUNCATE TABLE命令是DDL删除命令,能把表中的数据全部删除,和DELETE区别在于,TRUNCATE 删除的数据不能恢复,DELETE是DML命令,删除的数据可以通过日志文件恢复;如果一个表中数据记录很多,TRUNCATE相对DELETE速度快。
3、说出以下聚合数的含义:avg,sum,max,min,count,count(*)Avg:求某一列值的平均值,Sum: 求某一列值的总和,Max:求某一列值的最大值,Min: 求某一列值的最小值,count: 对某一列中的值计算个数,count*):计算元组个数4、inner join是什么意思?作用是什么?写出基本语法结构inner join:内联接,用于返回两个表中要查询的列数据通信Select * from 表名1 inner join 表名2 on 条件表达式5左向外联接,右向外联接,全联接的关键字如何写Left outer join 左向外联接Right outer join 右向外联接Full outer join 全联接6、视图可以更新吗?会影响到实际表吗?视图是可以更新的,视图只是基于基本表上的虚拟表,对视图的更新会直接影响到实际表7、什么是存储过程?为什么存储过程要比单纯的SQL语句执行起来要快?存储过程:是一组预先编译好的T-SQL代码。
在创建存储过程时经过了语法和性能优化,执行不必重复的步骤,使用存储过程可提高运行效率。
8、什么是inserted表?什么是deleted表?inserted表:存放由于执行insert或update语句而要向表中插入的所有行。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1、在SQL中,下面不包括事务分类的是()(选择一项)A、显示事务B、回滚事务C、隐式事务D、自动提交事务2、在SQL中,以下关于存储过程的说法错误的是()(选择一项)A、存储过程就是一系列SQL语句的组合B、存储过程是SQL查询语句与控制流语句的预编译集合C、存储过程以特定的名称保存在数据库中D、存储过程也是数据库对象3、在SQL中,要指定存储过程的参数为输出参数正确的是()(选择二项)A、outputB、inC、onD、out4、在SQL中,关于存储过程的输入参数默认值的说法错误的是()(选择一项)A、给参数指定默认值后,调用存储过程时,可以不提供参数B、输入参数必须有默认值C、在调用存储过程时,可以使用default代替参数D、带默认值的输入参数,可以方便用户使用5、在SQL中,关于存储过程中使用return关键字的作用有()(选择二项)A、可以使用return关键字阻止存储过程的执行B、可以使用return查询出数据C、return可以返回数据D、return语句只能在存储过程中使用6、在SQL中,下面不属于创建事务的原则的是()(选择一项)A、事务要尽可能简短B、在事务中访问的数据要尽量减少C、浏览数据时要尽量打开事务D、在事务处理期间尽量不要请求用户输入7、在SQL中,下面的语句不能在事务中使用的有()(选择二项)A、insertB、create databaseC、drop databaseD、delete8、在SQL中,下面不属于事务的隔离级别的是()(选择一项)A、read uncommittedB、read committedC、repeatable readD、unqinue read9、在SQL中,创建视图的命令正确的是()(选择一项)A、create procedureB、create triggerC、create viewD、create database10、在SQL中,下面不属于索引的类型的是()(选择一项)A、主键索引B、唯一索引C、聚集索引D、组合索引11、在SQL中,下面创建索引不正确的是()(选择一项)A、create fillfactorB、create uniqueC、create clusteredD、create nonclustered12、在SQL中,下面关于触发器的说法不正确的是()(选择一项)A、触发器是一种实施复杂的、完整性约束的特殊存储过程B、触发器不像一般的存储过程,可以使用存储过程的名字来调用或执行C、触发器一般用于加强数据库的某些使用规则D、触发器有inserted和deleted表13、在SQL中,下面关于inserted和deleted表的说法不正确的是()(选择一项)A、inserted表用于存放insert或update语句执行所影响行的副本B、deleted表存放delete或update语句执行所影响行的副本C、当执行一条delete语句时,deleted表和触发器表会有相同的行D、inserted和deleted表只能由创建它们的触发器引用14、在SQL中,创建触发器的类型不包括()(选择一项)A、insert触发器B、update触发器C、delete触发器D、select触发器15、在SQL中,触发器的优点不包括()(选择一项)A、触发器不可以通过数据库中的相关表实现级联更改B、触发器可以强制比用check约束定义的约束更为复杂的约束C、与check约束不同,触发器可以引用其他表中的列D、触发器可以评估数据修改前后的表状态,并根据其差异采取对策16、在SQL中,下面对视图的说法不正确的是()(选择一项)A、视图由字段和记录组成,是真实存在的B、视图是包含一张表或多张表的列组成的数据集C、视图是一张虚拟表D、对表能进行的操作都可以用于视图17、安装MS SQL Server时,系统自动建立几个数据库,其中有一个数据库被删除后,不影响系统的正常运行,这个数据库是()(选择一项)A、master数据库B、model数据库C、tempdb数据库D、pubs数据库18、E-R模型用于数据库设计的哪一个阶段()(选择一项)A、需求分析B、概念结构设计C、逻辑结构设计D、物理结构设计19、关于关系图下列哪一个是正确的()(选择一项)A、关系图是在同一个表中不同字段之间建立关联B、关系图是表与表之间建立关联,与字段无关C、关系图是在不同表中的字段之间建立关联D、关系图是在不同数据库之间建立关联20、在SQL中,select distinct表示查询结果中()(选择一项)A、属性名都不相同B、去掉了重复的列C、行都不相同D、属性值都不相同21、在T-SQL语言中,修改表结构时,应使用的命令是()(选择一项)A、updateB、insertC、alterD、modify22、在SQL数据库中,如果强制要求[grades]表中的学员必须是[Students]表中存在的学员,以下描述正确的是()(选择一项)A、在[grades]表中创建外键约束B、在[grades]表中创建检查约束C、在[grades]表中创建唯一约束D、在[grades]表中创建默认约束23、下面哪项是一元运算符()(选择一项)A、/B、%C、>D、-24、查询语句select stuff(‘he rld‘,3,1,’llo wo‘)结果为()(选择一项)A、helloB、world helloC、hello worldD、world25、select 职工号from 职工where 工资>1250 命令的功能是()(选择一项)A、查询工资大于1250的记录B、查询1250号记录后的记录C、检索所有的职工号D、从[职工]表中检索工资大于1250的职工号26、在SQL中,关于以下程序段,正确的说法是()(选择一项)create proc proc_test@age int asdeclare @error int set @error=0begin tran update student set age=@age@error=@error+@@errorif(@error<>0)rollback tran else commit tran goA、创建了一个带事务处理的存储过程B、此存储过程无法修改student表中的ageC、此存储过程无法创建D、定义@error时出错27、在SQL的系统存储过程中,()存储过程用于返回某个表列的信息(选择一项)A、sp_helpB、sp_columnsC、sp_helpdbD、sp_tables28、在SQL中,对数据完整性描述正确的是()(选择二项)A、数据的正确性和数据的相容性,它们共同保证数据在语义上的合理性和有效性B、数据库中每一字段都必须要有数据C、数据的类型限制,例如年龄字段是int,不能向数据表添加如20.02这样的数据D、数据完整性的保证一般是由DBMS提供的机制来实现29、在sql server2005中,为数据库表建立索引能够()(选择一项)A、防止非法的删除操作B、防止非法的插入操作C、提高查询性能D、节约数据库的磁盘空间30、数据库中存放三个关系:学生(学号,姓名)和课程(课程号,课程名)和成绩(学号、课程号、成绩),为快速查出某位学生所学的课程名,应该()(选择一项)A、在学生表上按学号建索引B、在成绩表上按课程号建索引C、在课程表上岸课程号建索引D、在学生表上按姓名建索引31、在[Student]表中基于StuName字段建立的索引属于()(选择一项)A、唯一索引非聚集索引B、非唯一索引非聚集索引C、聚集索引非唯一索引D、唯一索引聚集索引32、sql server 2005中,使用t-sql编程时,下列()语句可以从while语句块中退出(选择一项)A、continueB、exitC、breakD、close33、在SQL中,下列涉及通配符的操作,范围最大的是()(选择一项)A、name like ‘hgf#‘B、name like ’hgf_%‘C、name like ‘hgf%‘D、name like ’h#%‘escape ’#‘34、下面哪个是SQL列名的合法标识符()(选择一项)A、a12B、12aC、@a12D、#qq35、查询毕业学校名称与“清华”有关的记录应该用()(选择一项)A、select * from 学习经历where 毕业学校like ‘*清华*‘B、select * from 学习经历where 毕业学校= ‘%清华%‘C、select * from 学习经历where 毕业学校like ‘?清华?‘D、select * from 学习经历where 毕业学校like ‘%清华%‘36、已知员工和员工亲属两个关系,当员工调出时,应该从员工关系中删除该员工的元组,同时在员工亲属关系中删除对应的亲属元组,在SQL语言中利用触发器定义这个完整性约束的短语是()(选择一项)A、instead of deleteB、instead of dropC、after deleteD、after update37、在SQL数据库中,以下对变量的定义错误的是()(选择一项)A、declare @name varchar(8)B、declare @error varchar(50)C、declare @@name varchar(8)D、declare @@error varchar(50)38、SQL Server支持在线备份,但在备份过程中,不允许执行的操作是()(选择一项)(1)创建或删除数据库文件(2)创建索引(3)执行非日志操作(4)自动或手动缩小数据库或数据库文件大小A、(1)B、(1)(2)C、(1)(2)(3)D、(1)(2)(3)(4)39、在sql server2005中,根据以下表设计的代码,判断其设计方面的问题是()(选择一项)create table member(last_name char(20)null,first_name varchar(30)not null,address_line1 varchar(30)null,address_line2 varchar(30)null,address2_line1 varchar(30)not null,address2_line2 char(30)null,book_id int null)A、应该把所有的null修改为not null,而且把not null修改为nullB、该表有进一步规范化的必要C、把book_id设为主键D、所有字段都应允许为空40、数据库设计时,在做表规范化的时候一般规范到()就足够了(选择一项)A、第一范式B、第三范式C、第四范式D、第五范式41、在sql server 2005中,给定如下的t-sql:declare @abc intdeclare @xyz intset @abc=10while @abc<=100beginset @xyz=case floor(@abc/30)when 0 then @abc*5when 1 then @abc*10else @abc*20endset @abc=@xyzendprint @xyz程序最后输出的结果是()(选择一项)A、50B、500C、100D、以上都不对42、sql server数据库中,包含两个表:order订单表,item订单子项目表。