当前位置:文档之家› SQL 测试题

SQL 测试题

SQL 测试题
SQL 测试题

SQL考试题

一、选择题

1.SELECT语句中与HAVING子句通常同时使用的是(C)子句。

A.ORDER BY

B.WHERE

C.GROUP BY

D.无需配合

2.以下聚合函数求数据总和的是(B)

A.MAX B.SUM C.COUNT D.AVG

3.SELECT语句的完整语法较复杂,但至少包括的部分是( B )

A.仅SELECT B.SELECT,FROM C.SELECT,GROUP D.SELECT,INTO 4.SQL语句中的条件用以下哪一项来表达( C )

A.THEN B.WHILE C.WHERE D.IF

5.查找表结构用以下哪一项( B )

A.FIND B.SELETE C.ALTER D.DESC

6.向数据表中插入一条记录用以下哪一项( B )

A.CREATE B.INSERT C.SAVE D.UPDATE

7.SQL语言中,删除一个表的命令是( D )

A.REMOVE B.CLEAR C.DELETE D.DROP

8.修改数据库表结构用以下哪一项( D )

A.UPDATE B.CREATE C.UPDATED D.ALTER

9.下列( D )不属于连接种类

A.左外连接B.内连接C.中间连接D.交叉连接10.SQL是一种( C )语言。

A.函数型B.高级算法C.关系数据库D.人工智能11.下列的SQL语句中,( B )不是数据定义语句。

A.CREATE TABLE B.GRANT C.CREATE VIEW D.DROP VIEW 12.以下聚合函数求平均数的是( C )

A.COUNT B.MAX C.AVG D.SUM

13.用来插入数据的命令是( A ),用于更新的命令是( ) A.INSERT,UPDATE B.CREATE,INSERT INTO C.DELETE,UPDATE D.UPDATE,INSERT

14.以下哪项用于左连接( C )

A.JOIN B.RIGHT JOIN C.LEFT JOIN D.INNER JOIN

15.一张表的主键个数为( C )

A.至多3个B.没有限制C.至多1个D.至多2个

二、填空题

1.select 9/3;的结果为___true_。

2.补全语句:select vend_id,count(*) as num_prods from products group by __vend__;

3.用SELECT进行模糊查询时,可以使用匹配符,但要在条件值中使用__下划线__或%等通配符来配合查询。

4.如果MySQL服务名为MySQL5,则在Windows的命令窗口中,启动MySQL 服务的指令是__net start MYSQL5__。

5.MySQL是一种___多用户___(多用户、单用户)的数据库管理系统。

6.创建数据表的命令语句是____create table 表名();_____。

7._order by___语句可以修改表中各列的先后顺序。

8.当某字段要使用AUTO_INCREMENT的属性时,该字段必须是_整数___类型的数据。

三、解答题

1.表名:购物信息

购物人商品名称数量

A 甲 2

B 乙 4

C 丙 1

A 丁 2

B 丙 5

……

(其他用户实验的记录大家可自行插入)

给出所有购入商品为两种或两种以上的购物人记录

Select *from 购物信息where 商品名称>=2 ;

2.表名:成绩表

姓名课程分数

张三语文81

张三数学75

李四语文56

李四数学90

王五语文81

王五数学100

王五英语49

……

(其他用户实验的记录大家可自行插入)

给出成绩全部合格的学生信息(包含姓名、课程、分数),注:分数在60以上评为合格

Select 姓名,课程,分数from成绩表where 分数>60;

3.表名:商品表

名称产地进价

苹果烟台 2.5

苹果云南 1.9

苹果四川 3

西瓜江西 1.5

西瓜北京 2.4

……

(其他用户实验的记录大家可自行插入)

给出平均进价在2元以下的商品名称

Select 名称,avg(进价) from 商品表group by 名称having avg(进价)<2;

4.表名:高考信息表

准考证号科目成绩

2006001 语文119

2006001 数学108

2006002 物理142

2006001 化学136

2006001 物理127

2006002 数学149

2006002 英语110

2006002 语文105

2006001 英语98

2006002 化学129

……

(其他用户实验的记录大家可自行插入)

给出高考总分在600以上的学生准考证号

Select 准考证号,sum(成绩) from 高考信息表group by 准考证号having sum(成绩)>600;

5.表名:高考信息表

准考证号数学语文英语物理化学

2006001 108 119 98 127 136

2006002 149 105 110 142 129

……

(其他用户实验的记录大家可自行插入)

给出高考总分在600以上的学生准考证号

Select 准考证号from 高考信息表where (数学+语文+英语+物理)>600;

6.表名:club

id gender age

67 M 19

68 F 30

69 F 27

70 F 16

71 M 32

……(其余测试数据请自行插入)

查询出该俱乐部里男性会员和女性会员的总数

Select count(*) from club ;

7.表名:team

ID(number型) Name(varchar2型)

1 a

2 b

3 b

4 a

5 c

6 c

要求:执行一个删除语句,当Name列上有相同时,只保留ID这列上值小的例如:删除后的结果应如下:

ID(number型) Name(varchar2型)

1 a

2 b

5 c

请写出SQL语句。

Select name ,max(id) from team group by name ;

Delect * from (Select Name,max(ID) from team group by Name ) ;

8.表名:student

name course score

张青语文72

王华数学72

张华英语81

张青物理67

李立化学98

张燕物理70

张青化学76

查询出“张”姓学生中平均成绩大于75分的学生信息

Select * from (Select *from student where name like '张%' ) as bstudent group by name having avg(score)>75;

或者select * from student where name in (select name from student where name like '张%' group by name having avg(score)>75);

SQL数据库基础知识集合

1、数据库简介: 数据库是专门开发数据管理的软件,或者说专门管理数据的软件就是数据库。 数据库存在的意义就是:减轻开发人员的负担。数据库是一个综合的软件,那么我们不需要队要进行2进制保存数据进行处理了,但是却是要与数据库产生交互,那么命令式SQL,有技巧的,数据库就是万物皆关系(面向对象,万物皆是对象)有所区别。 2、数据库的发展: 一开始的是层次化的数据与网状数据库,后来也发现使用确实很麻烦。 于是到了1970年EF.Cold博士(IBM公司的研究员)开创了关系性的数据库的先驱,发表了关系性数据库的论文,但是由于当时电脑硬件的局限性,大家觉得跑如此大的程序不值得。后来,Oracle(甲骨文)公司的创始人,拉里带领Oracle投入到关系型数据库的研发,并且得到了一个大客户—美国国防部。随即开始世界刮起了关系数据库的旋风,随后各个公司都纷纷推出自己的数据库系统。比如:IBM的DB2 ,还有风靡一时的DBS3。 但是随即出现不兼容的问题,由于最早的时候都没有进行没规范。所以到最后各个数据库巨头统一了操纵数据库的SQL(结构化Struct数据查询语言)变成了标准语言,而关系型数据库也俨然变成大家的宠儿,Oracle也从一个小公司,变成现在的数据库巨头,而我们的微软也推出了SQLServer。当然还有PHPer的最爱mySQL。但是mySQL被SUN,SUN 被Oracle收购,现在有免费版与收费专业版了。所以我们学习SQL语言的时候,先学共同点,再学特异性。各种数据库软件在使用上有一点区别。 3、数据库系统详解: 为适应数据处理的需要而发展起来的一种较为理想的数据处理的核心机构。计算机的高速处理能力和大容量存储器提供了实现数据管理自动化的条件。 数据库系统一般由4个部分组成: 数据库,即存储在磁带、磁盘、光盘或其他外存介质上、按一定结构组织在一起的相关数据的集合。(个体) 数据库管理系统(DBMS)。一组能完成描述、管理、维护子数据库的程序系统。它按照一种公用的和可控制的方法完成插入新数据、修改和检索原有数据的操作。 数据库管理员(DBA)。 用户和应用程序。(微软的称作SSMS) 4、数据库系统的基本要求是: 1、能够保证数据的独立性。数据和程序相互独立有利于加快软件开发速度,节省开发费用。 2、冗余数据少,数据共享程度高。 3、系统的用户接口简单,用户容易掌握,使用方便。 4、能够确保系统运行可靠,出现故障时能迅速排除,能够保护数据不受非受权者访问或破坏,能够防止错误数据的产生,一旦产生也能及时发现。 5、有重新组织数据的能力,能改变数据的存储结构或数据存储位置,以适应用户操作特性的变化,改善由于频繁插入、删除操作造成的数据组织零乱和时空性能变坏的状况。 6、具有可修改性和可扩充性、可维护性。 7、能够充分描述数据间的内在联系。 5、数据库(Database): 由众多的数据、数据表、约束、存储过程、函数、视图、索引构成的一个数据存储与交互单元,是按照数据结构来组织、存储和管理数据的仓库。 6、数据表(table): 数据表,实际上是一个二维表。一般是围绕一个事务、动作记录,或者是一个信息主题作为一个数据表。数据表由行与列构成。 7、列(column、field): 列,其实就是字段。也是决定了信息的基本单元。列,包含有数据类型的设定。 8、行(row、record): 行,实际上就是一条基本信息。一行包含了多列数据的存储的信息。所以一行也有一条记录之称。 9、行业(trade) 一个行业一种需求,没一个需求每一种数据库的设计模式与思想。每个行业的数据设计的重点都是不同的。侧重查询(要求低范式)还是操作(要求搞范式)就是自己选择的问题了。 10、索引(index) 索引是一个单独的、物理的数据库结构,它是某个表中一列或若干列值的集合和相应的指向表中物理标识这些值的数据页的逻辑指针清单。索引其实就是一个B+树,但是这个索引是N^n层数次方的。目的就是在数据库中划分出一定的区域优化查询。可以提升大量数据的查询速度。索引一般可以分为:基于字段优化查询速度的普通索引、唯一性索引、主键索引、全文索引、单列与多列索引。现在由于数据库系统的不断升级,我们只要设定索引就可以了,不需要特殊的维护。而且数据在查询的时候也会根据查询适当地选择是利用索引查询,还是仅仅是表查询。由于数据库系统的发展,系统内部已经自动帮我们完成对索引的维护。但是在设计的时候要考虑到索引的损耗问题。数据库DB就像是一个字典,索引就是根据指定字段制成的快速指向。由于只是指向数据对象标识,真正的数据是存储在DB中,所以查询速度极快。但是额外的内存与硬盘花销也是一个需要考虑的问题。比如:增加、删除、修改时数据库都要对索引进行维护,但是这样也是为了最后查询的效率的提升,特别适合W行级别的数据查询。而索引可以分为:隐式索引(针对单个字段)、唯一索引(唯一约束)、函数索引(函数(字段))、聚簇索引(主键)、组合索引(最多16个field)与全文索引(text)。一般索引会占用原数据库大小的20%。 11、视图(view) 固化的子查询,将一个子查询起了一个固化的名字,保存在数据库中,方便以后的使用。其实调用大量的Join来进行一个查询一般也是用视图。视图与索引都是为了优化查询的速度与语句。视图是优化语句,索引是优化单查速度。一般是DBA来设定数据库的视图,封装内部数据库的数据关系,范式修改数据容易了,视图让我们查询复杂关系的数据变得容易。 12、触发器(trigger) 触发器(trigger)是个特殊的存储过程,它的执行不是由程序调用,也不是手工启动,而是由个事件来触发,比如当对一个表进行操作(insert,delete,update)时就会激活它执行。触发器经常用于加强数据的完整性约束和业务规则等。触发器可以从DBA_TRIGGERS ,USER_TRIGGERS 数据字典中查到。 13、SQLServer数据类型详解

sql练习题+答案

(一)新建以下几个表 student(学生表): 其中约束如下: (1)学号不能存在相同的 (2)名字为非空 (3)性别的值只能是’男’或’女’ (4)系包括这几个:信息系,计算机科学系,数学系,管理系,中文系,外语系,法学系 (5)出生日期为日期格式 (6)年龄为数值型,且在0~100之间

cs(成绩表): 其中约束如下: (1)sno和cno分别参照student和course表中的sno,cno的字段(2)cj(成绩)只能在0~100之间,可以不输入值 course(课程表)

其约束如下: (1)课程号(cno)不能有重复的 (2)课程名(cname)非空 (三)针对学生课程数据库查询 (1)查询全体学生的学号与姓名。 (2)查询全体学生的姓名、学号、所在系,并用别名显示出结果。 (3)查询全体学生的详细记录。 (4)查全体学生的姓名及其出生年份。 (5)查询学校中有哪些系。

(6)查询选修了课程的学生学号。 (7)查询所有年龄在20岁以下的学生姓名及其年龄。 (8)查询年龄在20~23岁(包括20岁和23岁)之间的学生的姓名、系别和年龄。 (9)查询年龄不在20~23岁之间的学生姓名、系别和年龄。 (10)查询信息系、数学系和计算机科学系生的姓名和性别。 (11)查询既不是信息系、数学系,也不是计算机科学系的学生的姓名和性别。 (12)查询所有姓刘学生的姓名、学号和性别。

(13)查询学号为2009011的学生的详细情况。(具体的学号值根据表中数据确定) (14)查询姓“欧阳”且全名为三个汉字的学生姓名 (15)查询名字中第2个字为“晨”字的学生的姓名和学号 (16)查询所有不姓刘的学生姓名。 (17)查询sql课程的课程号和学分。 (18)查询以"DB_"开头,且倒数第3个字符为 i的课程的详细情况。 (19)查询缺少成绩的学生的学号和相应的课程号。

数据库应用(SQL_Server)模拟试卷和答案

北京语言大学网络教育学院 《数据库应用(SQL Server)》模拟试卷一 注意: 1.试卷保密,考生不得将试卷带出考场或撕页,否则成绩作废。请监考老师负责监督。 2.请各位考生注意考试纪律,考试作弊全部成绩以零分计算。 3.本试卷满分100分,答题时间为90分钟。 4.本试卷分为试题卷和答题卷,所有答案必须答在答题卷上,答在试题卷上不给分。 一、判断题(本大题共5小题,每小题2分,共10分),正确的填T,错误的填F,请将答案填在答题卷相应题号处。 1、对于一个已存在的表,对其进行增加列、删除列、更改列的名称和数据类型等操作都能进行。() 2、一个表不能有主键值相同的两行。() 3、在设计存储过程时,可以为参数提供一个默认值,其一般格式是:CREATE PROCEDURE 存储过程名( 参数1=默认值1, 参数2=默认值2,… ) AS SQL语句。() () 4、凡是能通过ODBC或OLEDB接口访问的数据库,也可通过ADO .NET来访问。 5、DataSet是核心的ADO .NET数据库访问组件,主要是用来支持ADO .NET的不连贯连接及分布数据处理。() 二、单项选择题(本大题共10小题,每小题2分,共20分)在每小题列出的四个选项中只有一个选项是符合题目要求的,请将正确选项前的字母填在答题卷相应题号处。 6、DBMS提供哪种语言来定义数据库的三级模式()。 [A] DBL [B] DCL [C] DDL [D] DML 7、SQL Server是()。 [A] 数据库 [B] 数据库系统 [C] 数据库管理系统 [D] 数据库应用系统 8、在数据库系统中,如果数据库的物理结构发生了变化,那么用户的应用程序 ()。 [A] 必须改变 [B] 自动改变 [C] 可以不变 [D] 必须作废 9、以下有关“关系的性质”的说法错误的是()。

SQL试题及答案

模拟测验1 一、选择题(在每个小题四个备选答案中选出一个正确答案,填在题末的括号中)(本大题共10小题,每小题2分,总计20分) 1.()是位于用户与操作系统之间的一层数据管理软件,它属于系统软件,它为用户或应用程序提供访问数据库的方法。数据库在建立、使用和维护时由其统一管理、统一控制。 A.DBMS B.DB C.DBS D.DBA 2.下列四项中,不属于SQL2005实用程序的是()。 A.对象资源管理器 B.查询分析器 C.服务管理器 D.媒体播放器 3.SQL Server安装程序创建4个系统数据库,下列哪个不是()系统数据库。 A.master B.model C.pub D.msdb 4.下列哪个不是sql数据库文件的后缀。 A..mdf B..ldf C..tif D..ndf 5.SQL语言允许使用通配符进行字符串匹配的*作,其中‘%’可以表示() A.零个字符 B.1个字符串 C.多个字符串 D.以上都是 6.SQL语言中,条件年龄BETWEEN15AND35表示年龄在15至35之间,且()。 A.包括15岁和35岁 B.不包括15岁和35岁 C.包括15岁但不包括35岁 D.包括35岁但不包括15岁 7.SQL的视图是从()中导出的。 A.基本表 B.视图 C.基本表或视图 D.数据库

8.在SQL语言中,建立存储过程的命令是() A、CREATE PROCEDURE B、CREATE RULE C、CREATE DURE D、CREATE FILE 9.SQL语言中,删除表中数据的命令是()。 A.DELETE B.DROP C.CLEAR D.REMOVE 10.在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)查询王文芳同学选修的所有课程的课程号;

SQL银行数据库管理语句(详细版)

create table UserInfo( CustomerId char(20), CustomerName char(50)not null, PID varchar(20)unique, Telephone varchar(20), Address char(50), PRIMARY KEY(CustomerId)) create table CardInfo( cardID char(50)not null, curType varchar(10)not null default'RMB', savingType varchar(10), openDate datetime default getdate(), openMoney int not null, balance int not null, pass char(50)not null default'888888', IsReportLoss char(50)not null default'否', customerID char(20)not null foreign key(customerID)references userinfo(customerID), PRIMARY KEY(CardId)) create table TransInfo( transDate datetime not null default'getdate()', cardID char(50)foreign key(cardID)references cardinfo(cardID), transType char(10)not null, transMoney bigint not null, remark char(20), ID int identity(1,1)not null) Insert into userinfo values('10001','李清','420101************','2071-84216821','湖北武汉'); Insert into userinfo values('10002','玉清','420101************','2071-84216820','湖北武汉'); INSERT INTO CardInfo V ALUES('102128001','RMB','活期',getdate(),'10000','10000','84212121','否','10001'); INSERT INTO CardInfo V ALUES('102128002','RMB','活期',getdate(),'10001','10001','84202020','否','10002');

SQL考试试题

MySql考试题 姓名:________ 成绩:________ 一、选择题(40分) 1.SQL 指的是?C (A) Strong Question Language (B) Structured Question Language (C) Structured Query Language 2.哪条SQL 语句用于更新数据库中的数据?C (A)MODIFY (B)SA VE AS (C)UPDATE (D)SA VE 3.哪条SQL 语句用于删除数据库中的数据?B (A)COLLAPSE (B)DELETE (C)REMOVE 4.哪条SQL 语句用于在数据库中插入新的数据?D (A) INSERT NEW (B)ADD RECORD (C)ADD NEW (D)INSERT INTO 5.通过SQL,您如何从"Persons" 表中选取"FirstName" 列?B (A)SELECT Persons.FirstName (B)SELECT FirstName FROM Persons (C)EXTRACT FirstName FROM Persons 6.通过SQL,您如何从"Persons" 表中选取所有的列?C (A)SELECT [all] FROM Persons (B)SELECT Persons (C)SELECT * FROM Persons (D)SELECT *.Persons 7.通过SQL,您如何从"Persons" 表中选取"FirstName" 列的值等于"Peter" 的所有记录?D (A)SELECT [all] FROM Persons WHERE FirstName='Peter' (B)SELECT * FROM Persons WHERE FirstName LIKE 'Peter' (C)SELECT [all] FROM Persons WHERE FirstName LIKE 'Peter' (D)SELECT * FROM Persons WHERE FirstName='Peter' 8.通过SQL,您如何从"Persons" 表中选取"FirstName" 列的值以"a" 开头 的所有记录?A (A)SELECT * FROM Persons WHERE FirstName LIKE 'a%' (B)SELECT * FROM Persons WHERE FirstName='a' (C)SELECT * FROM Persons WHERE FirstName LIKE '%a' (D)SELECT * FROM Persons WHERE FirstName='%a%' 9.哪个SQL 关键词用于对结果集进行排序?D (A)ORDER (B)SORT BY (C)SORT (D)ORDER BY 10.通过SQL,您如何向"Persons" 表插入新的记录?C (A)INSERT ('Jimmy', 'Jackson') INTO Persons (B)INSERT V ALUES ('Jimmy', 'Jackson') INTO Persons (C)INSERT INTO Persons V ALUES ('Jimmy', 'Jackson') 11.以下聚合函数求数据总和的是( B ) A.MAX B.SUM C.COUNT D.A VG 12.SELECT语句的完整语法较复杂,但至少包括的部分是( A ) A.仅SELECT B.SELECT,FROM C.SELECT,GROUP D.SELECT,INTO 13.SQL语句中的条件用以下哪一项来表达( C ) A.THEN B.WHILE C.WHERE D.IF 14.以下能够删除一列的是( B )

最新SQL相关模拟试题及答案

SQL相关模拟试题及答案 一、名词解释:每题2分,共10分 1、数据库: 2、表: 3、索引: 4、存储过程: 5、 DTS: 二、判断题(对的打√,错的打×):每题1分,共10分 1、安装Microsoft SQL Server 2000 企业版对操作系统的最低要求可以是Microsoft Windows 2000 Professional。() 2、每一个服务器必须属于一个服务器组。一个服务器组可以包含0个、一个或多个服务器。() 3、认证模式是在安装SQL Server过程中选择的。系统安装之后,可以重新修改SQL Server 系统的认证模式。() 4、在创建表时,不能指定将表放在某个文件上,只能指定将表放在某个文件组上。如果希望将某个表放在特定的文件上,那么必须通过创建文件组来实现。() 5、当用户定义的数据类型正在被某个表的定义引用时,这些数据类型不能被删除。() 6、在使用子查询时,必须使用括号把子查询括起来,以便区分外查询和子查询。() 7、索引越多越好。() 8、视图本身没有数据,因为视图是一个虚拟的表。() 9、创建触发器的时候可以不是表的所有者或数据库的所有者。() 10、输入正确的所有者口令,才可以修改DTS包的定义和执行DTS包。如果只输入用户口令,那么只能执行DTS包,不能修改该DTS包的定义。() 三、填空题:每空1分,共20分 1、认证模式类型有和两种。 2、数据库对象就是存储和管理数据库的结构形式,这些数据库对象包括数据库图表、表、函数、视图、、、缺省、规则、出版物等。 3、表是由行和列组成的,行有时也称为,列有时也称为或域。 4、数据库操纵技术就是指插入、、检索和表中数据的技术。 5、创建索引的方法可以分为和。 6、在Microsoft SQL Server系统中,支持3种类型的备份介质:、磁带和。 7、触发器有3种类型,即INSERT类型、和。 8、Transact-SQL语言有4部分元素组成,分别是:、数据定义语言、和一些附加的语言元素。 9、事务的4个属性:自动性、一致性、和。 10、ODBC结构中包括4种主要的组件元素,即、ODBC驱动器管理程序、和数据源。 四、简答题:每题8分,共40分 1、如何验证SQL Server系统的正确安装结果

sql数据库期末考试题及答案

一、单选题(共 10 道试题,共 50 分。)V 1. SQL Server中,保存着每个数据库对象的信息的系统表是()。 A. sysdatabases B. Syscolumns C. Sysobjects D. Syslogs 满分:5 分 2. 在存在下列关键字的SQL语句中,不可能出现Where子句的是()。 A. Update B. Delete C. Insert D. Alter 满分:5 分 3. 在查询语句的Where子句中,如果出现了“age Between 30 and 40”,这个表达式等同于()。 A. age>=30 and age<=40 B. age>=30 or age<=40 C. age>30 and age<40 D. age>30 or age<40 满分:5 分 4. 如果要在一管理职工工资的表中限制工资的输入围,应使用()约束。 A. PDRIMARY KEY B. FOREIGN KEY C. unique D. check 满分:5 分 5. 记录数据库事务操作信息的文件是()。 A. 数据文件 B. 索引文件 C. 辅助数据文件 D. 日志文件 满分:5 分 6. 要查询XSH数据库CP表中产品名含有“冰箱”的产品情况,可用()命令。 A. SELECT * FROM CP WHERE 产品名称LIKE ‘冰箱’ B. SELECT * FROM XSH WHERE 产品名称LIKE ‘冰箱’ C. SELECT * FROM CP WHERE 产品名称LIKE ‘%冰箱%’ D. SELECT * FROM CP WHERE 产品名称=‘冰箱’ 满分:5 分 7. 储蓄所有多个储户,储户能够在多个储蓄所存取款,储蓄所与储户之间是()。 A. 一对一的联系 B. 一对多的联系 C. 多对一的联系 D. 多对多的联系 满分:5 分

SQL练习题复习课程

例题 1、写出一条Sql语句:取出表A中第31到第40记录(Mysql) select * from A limit 30, 10 MS-SQLServer 解1:select top 10 * from A where id not in (select top 30 id from A) 解2:select top 10 * from A where id > (select max(id) from (select top 30 id from A )as A) 解3:select * from (select *, Row_Number() OVER (ORDER BY id asc) rowid FROM A) as A where rowid between 31 and 40 Oracle select * from (select A.*, row_number() over (order by id asc) rank FROM A) where rank >=31 AND rank<=40; 2、用一条SQL语句查询出每门课都大于80分的学生姓名 name kecheng fenshu 张三语文81 张三数学75 李四语文76 李四数学90 王五语文81 王五数学100 王五英语90

A: select distinct name from table where name not in (select distinct name from tabl e where fenshu<=80) select name from table group by name having min(fenshu)>80 3、学生表如下: 自动编号学号姓名课程编号课程名称分数 12005001张三0001数学69 22005002李四0001数学89 32005001张三0001数学69 删除除了自动编号不同,其他都相同的学生冗余信息 A: delete tablename where自动编号not in(select min(自动编号) from tablename group by学号,姓名,课程编号,课程名称,分数) 4、请用SQL语句实现: 从TestDB 数据表中查询出所有月份的发生额都比101 科目相应月份的发生额高的科目。请注意:TestDB 中有很多科目,都有1 -12 月份的发生额。 AccID :科目代码,Occmonth :发生额月份,DebitOccur :发生额。 数据库名:JcyAudit ,数据集:Select * from TestDB 答:select a.* from TestDB a ,(select Occmonth,max(DebitOccur) Debit101ccur from TestDB where AccID='101' gro up by Occmonth) b where a.Occmonth=b.Occmonth and a.DebitOccur>b.Debit101ccur

sql语句模拟测试题

SQL语句真题模拟测试 姓名__________分数___________ 有如下四个表: 查询测试: 1、查询出在2号仓库工作的所有员工的工资,并且去掉重复值 2、查询出工资在1230到1250之间的所有员工信息 3、查询出供应商名中所有包含“子”字的供应商信息 4、找出工资为1250元的职工号和城市

5、查询出wh1仓库中共有多有个员工 6、计算出每个仓库的人数,总工资和最高工资,字段分别显示为仓库号,人数,总工资和最高工资 7、在订购单表中查询出还没有完成订单的订单信息 8、找出和职工E4挣同样工资的职工号和工资 9、找出还没有员工的仓库信息 10、查询出工资大于或等于2号仓库中其中一名职工工资的的员工信息 11、显示工资最高的30% 的员工信息 操作测试: 1、用SQL语句在职工表中插入记录(“WH4”,”E8”,1111) 2、把所有面积小于500的仓库,面积在原来的基础之上扩大20% 3、删除所有还没有完成订单的记录 定义功能: 1、在数据库中创建表的CREATE TABLE命令中定义主索引、实现实体完整性规则的短语是( )。

A) FOREIGN KEY B) DEFAULT C) PRIMARY KEY D) CHECK 2、在Visual FoxPro中,下列关于SQL表定义语句(CREATE TABLE)的说法中错误的是( )。 A) 可以定义一个新的基本表结构 B) 可以定义表中的主关键字 C) 可以定义表的域完整性、字段有效性规则等 D) 对自由表,同样可以实现其完整性、有效性规则等信息的设置 3、"教师表"中有"职工号"、"姓名"和"工龄"等字段,其中"职工号"为主关键字,建立"教师表"的SQL命令是( )。 A) CREATE TABLE 教师表(职工号 C(10)PRIMARY,姓名 C(20),工龄I) B) CREATE TABLE 教师表(职工号 C(10)FOREIGN,姓名 C(20),工龄I) C) CREATE TABLE 教师表(职工号 C(10)FOREIGN KEY,姓名 C(20),工龄I) D) CREATE TABLE 教师表(职工号 C(10)PRIMARY KEY,姓名 C(20),工龄I) 4、表名为Employee的表结构是(职工号,姓名,工资),建立表Employee的SQL命令是 A) CREATE TABLE Employee(职工号 C(10),姓名 C(20), 工资 Y) B) CREATE Employee TABLE(职工号 C(10),姓名 C(20), 工资 Y) C) CREATE DATABASE Employee(职工号 C(10),姓名 C(20), 工资 Y) D) CREATE Employee DATABASE(职工号 C(10),姓名 C(20), 工资 Y 5、从产品表中删除生产日期为2013年1月1日之前(含)的记录,正确的SQL语句是 A) DROP FROM 产品 WHERE 生产日期<={^2013-1-1} B) DROP FROM 产品 FOR 生产日期<={^2013-1-1} C) DELETE FROM 产品 WHERE 生产日期<={^2013-1-1} D) DELETE FROM 产品 FOR 生产日期<={^2013-1-1} 6、为"评分"表的"分数"字段添加有效性规则:"分数必须大于等于0并且小于等于10",正确的SQL语句是( )。 A) CHANGE TABLE 评分ALTER 分数 SET CHECK 分数>=0 AND 分数<=10 B) ALTER TABLE 评分 ALTER 分数 SET CHECK 分数>=0 AND 分数<=10 C) ALTER TABLE 评分 ALTER 分数 CHECK 分数>=0 AND 分数<=10 D) CHANGE TABLE 评分 ALTER 分数 SET CHECK 分数>=0 OR 分数<=10 7、有表名为Employee的表结构(职工号,姓名,工资),为表Employee增加字段"住址"的SQL命令是 A) ALTER DBF Employee ADD 住址 C(30) B) CHANGE DBF Employee ADD 住址 C(30) C) CHANGE TABLE Employee ADD 住址 C(30) D) ALTER TABLE Employee ADD 住址 C(30) 8、在Visual FoxPro中,如果要将学生表S(学号,姓名,性别,年龄)中"年龄"属性删除,正确的SQL命令是( )。 A) ALTER TABLE S DROP COLUMN 年龄 B) DELETE 年龄 FROM S C) ALTER TABLE S DELETE COLUMN 年龄 D) ALTER TABLE S DELETE 年龄

sql考试题及答案

sql考试题及答案 【篇一:sql试题及答案】 题(在每个小题四个备选答案中选出一个正确答案,填在题末的括号中)(本大题共10小题,每小题2分,总计20分) 1. ()是位于用户与操作系统之间的一层数据管理软件,它属于系统软件,它为用户或应用程序提供访问数据库的方法。数据库在建立、使用和维护时由其统一管理、统一控制。 a.dbms b.db c.dbs d.dba 2. 下列四项中,不属于sql2005实用程序的是()。 a.对象资源管理器 b.查询分析器 c.服务管理器 d.媒体播放器 3. sql server安装程序创建4个系统数据库,下列哪个不是()系统数据库。 a. master b. model c. pub d. msdb 4. 下列哪个不是sql 数据库文件的后缀。 a..mdf b..ldf c..tif d..ndf 5. 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 procedure b、create rule c、create dure d、create file 9. sql语言中,删除表中数据的命令是( )。 a. delete b. drop

大数据库应用技术模拟试题

数据库应用技术模拟试题1 一、单项选择题(每个题只有一个答案是正确的,请将正确的答案填写到括号内。) 1.下列功能中,不属于数据库管理系统功能的是(B)。 A、数据库对象定义 B、数据库文件读写 C、数据查询 D、数据更新 2.下列类型中,属于定点小数类型的是(A)。 A、numeric B、int C、datetime D、real 3.对char(10)类型的列,若存储“电视”,其占用的字节数是(C)。 A、4 B、5 C、10 D、20 4.下列条件子句中,能够筛选出成绩在60~80(包括边界值)的是(B)。 A、Where 成绩>= 60 OR成绩<= 80 B、Where成绩>= 60 AND成绩<= 80 C、Where 60 <= 成绩<= 80 D、Where成绩IN(60..80)

5.下列关于聚集索引与非聚集索引的说法,正确的是(C)。 A、在一个表上可以建立多个聚集索引和多个非聚集索引 B、在一个表上可以建立多个聚集索引和最多一个非聚集索引 C、在一个表上可以同时存在聚集索引和非聚集索引 D、必须先建立聚集索引,然后再建立非聚集索引 6.下列关于触发器的说法,正确的是(B)。 A、后触发型触发器是在触发器执行完成后再执行引发触发器执行的语句 B、触发器是由数据更改操作引发的自动执行的代码 C、引发触发器执行的操作可以是SELECT D、CREATE TRIGGER tri ON table1 FOR INSERT定义的是前触发型触发器 7.可以利用Connection对象的Execute方法实现对数据库的更改操作。下列将SC表中学号为S105的学生的成绩减少10分的语句,正确的是(C)。 A、ADOcn.Execute “ALTER SC SET Grade = Grade - 10 WHERE 学号= 'S105' ” B、ADOcn.Execute “ALTER FROM SC SET Grade = Grade - 10 WHERE 学号= 'S105' ” C、ADOcn.Execute “UPDATE SC SET Grade = Grade - 10 WHERE 学号='S105' ” D、ADOcn.Execute “UPDATE FROM SC SET Grade = Grade - 10 WHERE 学号= 'S105' ” 8.下列声明并创建Connection对象的语句,正确的是(B)。 A、Dim ADOcn As Connection B、Dim ADOcn As New Connection C、Declare ADOcn As New Connection D、Declare ADOcn As Connection 9.若有学生表Student,结构为:学生(学号,姓名,所在系),选课表SC结构为:选课(学号,课程号,成绩)。现要查询信息工程系学生的姓名和所选的课程号。下列关系代数表达式正确的是(C)。 A、σ姓名,课程号( ∏所在系=‘信息工程’ (SCStudent)) B、σ姓名,课程号( ∏所在系=‘信息工程’ SCStudent)

SQL基础试题

SQL基础试题(总分90分,考试时间:90分钟) 姓名 以下用SQL语句完成 1. 建表Employee与Training,分析表1和表2的结构,自行设置主键,写出建表语句。(1 0分) 2. 用SQL语句把上述两表的数据插入建好的表中,分别用一条SQL语句完成(随意选择一 条数据)(10分) 3. 修改表2,加入备注字段(memo)。(5分) 4. 统计出各部门的人数和各部门姓“李”的人数。(10分)

5. 列出所有员工参加培训的情况,要求显示EID,Name,Department,Course,用一条S QL语句完成。(5分) 6. 选出未参加培训的人员名单,按表1的格式显示,用一条SQL语句完成。(5分) 7. 更新员工的Email,规则为:员工所在部门名称加员工姓名再加“@https://www.doczj.com/doc/3518896642.html,”,用一条 SQL语句完成。(5分) 8. 列出所有各课成绩最高的员工信息,要求显示EID,Name,Department,Course,Grad e,用一条SQL语句完成。(5分) 9. 把所有表2有但表1没有的员工编号插入到表1中,用一条SQL语句完成。(5分) 10. 统计各门课程成绩各分数段人数: 课程ID,课程名称,[100-85],[84-70],[69-60],[<60] (10分) 11. 开发一个存储过程proc_get_emp_info要求如下: 输入参数:i_eid员工号 输出参数:o_retno响应码 o_info员工名字、部门和工作(中间用竖线分割) 处理逻辑: 根据输入的账号,查询其他字段的信息并返回,如果存在该账号,o_retno字段为0,同时在o_info字段返回对应的客户号和客户姓名;如果输入的账号不存在,o_retno返回1,o_info为“NOTFOUND”,如果处理过程中发生异常,o_retno返回-1,o_info存放具体的异常信息。(20分)

SQL2008数据库使用手册

SQL数据库用户使用手册 如何将本地SQL数据库导入到万网主机上,一般分为4个步骤 示例: 第一步:通过SQL脚本生成表结构,可以保证本地数据库中视图、存储过程、以及表的默认值、标识、主键等属性的完整性,避免由于DTS传输引起丢失属性的问题,同时使用查询分析器执行SQL脚本,在服务器端创建表结构; 1)、请您先运行本地的企业管理器 2)、请您点击您本地的数据库点击右健-》选择生成SQL脚本

3)、选择常规-》点击全部显示,选择您想导出的脚本对象 4)、点击选项-》表脚本选项,把您所用到的脚本选中然后点击确定 5)为自己导入的.sql脚本文件命名,并保存在本地

6)、找到刚才我们保存在本地的.sql脚本文件,使用记事本打开 7)、选择编辑-》替换,把程序中所有[dbo]的字符都更改成您万网发信告知您的数据库登

陆名,更换完成后保存关闭记事本 8)、通过万网通知书中的数据库登陆地址、数据库登陆名、和数据库密码,使用企业管理器连接到万网的主机服务器上,然后选择查询分析器

9)、点击打开选择刚才编辑过的.sql脚本,然后点击运行 第二步:在本地创建一个和万网主机相同权限的SQL数据库 1)、完成上面操作后,请您选择数据库点击右键选择新建数据库,由于您在万网申请的是虚拟主机,万网分配的权限都是user的而不是dbo的权限,因此需要您在本地也创建一个与服务器一样的配置,以便正常完成导入操作

2)、在常规-》名称处输入万网开通通知中告知您的数据库库名,然后点击确定。例如:cw01001_db 3)、选择安全性-》新建登陆

SQL相关模拟试题及答案

SQL相关模拟试题及答案 名词解释:每题2分,共10分 1 数据库: 、 2、表: 3、索引: 4、存储过程 5、DTS : 二、判断题(对的打",错的打X):每题1分,共10分 1、安装Microsoft SQL Server 2000 企业版对操作系统的最低要求可以是Microsoft Windows 2000 Professional 。() 2、每一个服务器必须属于一个服务器组。一个服务器组可以包含0个、一个或多个服务器。() 3、认证模式是在安装SQLServer过程中选择的。系统安装之后,可以重新修改SQLServer系统的认证模式。() 4、在创建表时,不能指定将表放在某个文件上,只能指定将表放在某个文件组上。如果希 望将某个表放在特定的文件上,那么必须通过创建文件组来实现。() 5、当用户定义的数据类型正在被某个表的定义引用时,这些数据类型不能被删除。() 6、在使用子查询时,必须使用括号把子查询括起来,以便区分外查询和子查询。() 7、索引越多越好。() 8、视图本身没有数据,因为视图是一个虚拟的表。() 9、创建触发器的时候可以不是表的所有者或数据库的所有者。() 10、输入正确的所有者口令,才可以修改DTS包的定义和执行DTS包。如果只输入用户口令,那么只能执行DTS包,不能修改该DTS包的定义。() 三、填空题:每空1分,共20分 1、认证模式类型有和两种。 2、数据库对象就是存储和管理数据库的结构形式,这些数据库对象包括数据库图表、表、函数、视图、、、缺省、规则、出版物等。 3、表是由行和列组成的,行有时也称为,列有时也称为或域。 4、数据库操纵技术就是指插入、、检索和表中数据的技术。 5、创建索引的方法可以分为和。 6、在Microsoft SQL Server 系统中,支持3种类型的备份介质:、磁带和。 7、触发器有3种类型,即INSERT类型、和。 8、Transact —SQL语言有4部分元素组成,分别是:、数据定义语言、和一些附加的语 9、事务的4个属性:自动性、一致性、和。

SQL练习题及答案

SQL练习题:商品销售数据库 商品销售数据库 Article(商品号char(4),商品名char(16),单价Numeric(8,2),库存量int) Customer(顾客号char (4),顾客名char (8),性别char(2),年龄int) OrderItem(顾客号char(4),商品号char(4),数量int, 日期date) 1. 用SQL建立三个表,须指出该表的实体完整性和参照完整性,对性别和年龄指出用户自定义的约束条件。(性别分成男女,年龄从10到100)。顾客表的数据用插入语句输入数据,其它两表可用任意方式输入数据。 create table OrderItem (顾客号char(4),商品号char(4),日期datetime,数量smallint, primary key (顾客号,商品号,日期), foreign key (商品号) references Article (商品号), foreign key (顾客号) references Custommer(顾客号) ); 2. 检索定购商品号为…0001?的顾客号和顾客名。 select distinct 顾客号,顾客名from OrderItem where 商品号='0001' 3. 检索定购商品号为…0001?或…0002?的顾客号。 select distinct 顾客号from OrderItem where 商品号='0001' or 商品号='0002';

4. 检索至少定购商品号为…0001?和…0002?的顾客号。 select 顾客号from OrderItem where 商品号='0001' and 顾客号in ( select 顾客号from OrderItem where 商品号='0002'); 5. 检索至少定购商品号为…0001?和…0002?的顾客号。(用自表连接方法) select X. 顾客号from OrderItem X,OrderItem Y where X.顾客号=Y.顾客号and X.商品号='0001' and Y. 商品号='0002'; 6. 检索没定购商品的顾客号和顾客名。 select 顾客号,顾客名from Custommer where 顾客号not in (select 顾客号from OrderItem); 7. 检索一次定购商品号…0001?商品数量最多的顾客号和顾客名。 select 顾客号,顾客名from Custommer where 顾客号in (select 顾客号from OrderItem where 商品号='0001'and 数量= (select MAX(数量)from OrderItem where 商品号='0001')); 8. 检索男顾客的人数和平均年龄。 select count(*) 人数,avg(年龄) 平均年龄from Custommer where 性别='男';

相关主题
文本预览
相关文档 最新文档