当前位置:首页 » 编程语言 » 数据库sql测试题
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

数据库sql测试题

发布时间: 2022-09-23 23:53:45

1. 关于数据库sql的一些简单题

1.select 班级名称,班级代码 from 班级 where 系部代码='02' or 系部代码='03';
2.在'学生'表中查询姓'李'学员的学号,姓名,年龄;
3.在'读者表' 表中查询名称中含有'红'的所有内容;
5.select 姓名,年龄 from 教师 where 姓名 like '?梅%';
4.在'图书表'表中查询图书编号为'100111'的所有内容;
6.在'读者表'表中查询'系部名称'为'自动化'的读者的最小年龄;
7.在'用户表'表中查询姓名,年龄字段,并按年龄,姓名升序排列;
8.select * from 学生 where 姓名 like '张%' or 姓名 like '罗%' or 姓名 like '刘%' order by 姓名
9.在'读者表'表中查询年龄大于60或小于1810的读者姓名;
10.将编号为'115',姓名为'王梅',性别为'女'的记录插入'读者表'表;
11.select 姓名 as name,出生日期 as 'Birthday' from 学生 where 性别='女'.

排版没排好,看起来有点费力;顺序有点乱,不过我都按照你的顺序写了.

2. sql 期末考试题

1、建立一个“学生”表Student,它由学号Sno、姓名Sname、性别Ssex、年龄Sage、 所在系Sdept五个属性组成,其中学号属性不能为空,并且其值是唯一的。

其值是唯一的,并不是说是主键,应该用关键字UNIQUE

CREATE TABLE Student(
Sno SMALLINT NOT NULL UNIQUE,
Sname CHAR(8),
Ssex CHAR(1),
Sage SMALLINT,
Sdept CHAR(20))

2、查询全体学生的详细记录
SELECT * FROM Student

3、查询年龄在20至23岁之间的学生的姓名、系别、和年龄
SELECT Sname, Sdept, Sage
FROM Student
WHERE Sage BETWEEN 20 AND 23

4、计算1号课程的学生平均成绩
SELECT AVG(Grade) FROM SC WHERE Cno = 1

5、将计算机科学系全体学生的成绩置零
UPDATE SC
SET grade = 0
WHERE Sno IN (SELECT Sno FROM Student WHERE Sdept = '计算机科学系')

3. SQL数据库练习题

1. SQL Server 2000是典型的关系型数据库产品。 ( 1 )
2. 在一台计算机上可以同时运行多个版本的SQL Server。 ( 1 )
3. 在SQL Server中日志文件是维护数据库完整性的重要工具。 ( 0 )
4. 在定义数据表时,定义某列为标识列的关键字是Identity。 ( 1 )
5. 浮点数据类型的优点是能够存储范围非常大的数字,但容易发生误差。 ( 0 )
6. 数据库完整性的目的是为了防止错误信息输入和输出。 ( 0 )
7. 在Update语句中,一次可以更新多个表。 ( 0)
8. 尽量使用Select * ,可以加快查询速度。 ( 0 )
9. 在SQL Server 2000中表示注释可以用类似C语言的/*...*/和//。 ( 0 )
10. 在SQL Server中,RTRIM函数删除字符串右边的空白字符。 ( 1 )
11. 一个表只能有一个聚集索引(簇索引)。 ( 1 )
12. SQL查询语言中,如果没有指定排序方式,则默认是升序方式。 ( 1 )
13. 在SQL Server 2000中ntext类型的字段不能进行排序操作。 ( 0 )
14. 在SQL Server 2000中bit类型的字段不能建立索引。 ( 1 )
15. 在被定义为唯一索引的列上的数据不能有重复的值。 ( 1 )
16. 在被定义为唯一索引的列上的数据不允许空。 ( 0可以的但是只能有一个null值 )
17. 在SQL Server中,每张表都应该建立一个索引,以提高查询速度。 ( 0 )
18. 视图在SQL Server中是一张虚拟表。 ( 1 )
19. 当一个视图由2个以上基本表构成时,不能进行删除视图中的数据。 ( 0 )
20. 在SQL Server中,触发器是一种特殊的存储过程。 ( 1 )
21. 由于存储过程是解释执行,所以每次执行时都要检查是否有语法错误。 ( 0 )
22. 可以在用户正在使用的数据库上执行数据库恢复操作。 ( 0 )
1表示正确

4. sql数据库一道试题帮忙做做

---1)
创建一张学生表,包含以下信息,学号,姓名,年龄,性别,家庭住址,联系电话
CREATE
TABLE
student
(

[id]
[int]
IDENTITY(1,1)
NOT
NULL,

[student_id]
[nvarchar](50)
NULL,

[studen_name]
[nvarchar](50)
NULL,

[age]
[int]
NULL
,

[sex]
[nvarchar](5)
NULL,

[address]
[nvarchar](200)
NULL,

[tel]
[nvarchar](20)
NULL
)
--2)
修改学生表的结构,添加一列信息,学历
ecation
alter
table
student
add
ecation
nvarchar(10)
NULL
--3)
修改学生表的结构,删除一列信息,家庭住址
alter
table
student
drop
column
address
--5)
修改学生表的数据,将电话号码以11开头的学员的学历改为“大专”
update
student
set
ecation='大专'
where
tel
like
'11%'
--6)
删除学生表的数据,姓名以C开头,性别为‘男’的记录删除
delete
student
where
studen_name
like
'C%'
and
sex='男'
--7)
查询学生表的数据,将所有年龄小于22岁的,学历为“大专”的,学生的姓名和学号示出来
select
studen_name,student_id
from
student
where
age<12
and
ecation='大专'
--8)
查询学生表的数据,查询所有信息,列出前25%的记录
select
TOP
25
PERCENT
*
from
student
--9)
查询出所有学生的姓名,性别,年龄降序排列
select
studen_name,sex,age
from
studen
order
by
age
desc
--10)
按照性别分组查询所有的平均年龄
select
avg(age)
as
age
from
studen
group
by
sex

5. 30道SQL判断题

1.SQL语言的视图定义和视图操作功能在一定程度上支持了数据的逻辑独立性。( T )
2.关系必须有唯一的候选码。( T )
扯什么候选码呢 就是外键 这些屌砖家
3.数据的完整性指数据库中数据的全面性。( F )
不只,完整性应该是正确性的意思
4.“授权”是数据库系统中采用的完整性措施之一。( F )
安全性措施
5.在关系数据库中,不同关系之间的联系是通过指针实现的。( F )
是外键
6.数据库触发器不是计算机硬件。(T )
7.事务在运行中间被强行停止可能会破坏事务原子性。( F )
事务本身就具有原子性
8.数据库触发器是计算机硬件。( F )
9.数据库系统避免了一切冗余。( F )
10.数据库系统中用于描述数据的数据存储在称为数据字典的特殊文件中。( T )
11.如果一个关系模式的候选键仅含有一个属性,则该关系模式一定是2NF。( F )
这屌问题我还真搞不懂
12.数据库中存储的只是数据。( T )
这道问题。。我觉得 如果穷究下去 是对的 因为计算机中存储的也只有数据,,
13.自然连接是关系代数的五种基本运算之一。( F )
并(U)、交(⌒)、投影(π)选择(σ)和笛卡儿积(×)
自然连接是inner join把。。
14.关系中不同的属性可来自同一个域。( T )
15.数据库系统的程序称为数据库事务。( F )
16.数据库系统的数据没有任何冗余。( F )
事实上良好的系统应该有一定荣誉的
17.若对关系依次进行两次选择,则结果与两次操作的先后顺序无关。( T )
18.连接是关系代数的基本运算之一。( T )
19.数据库是数据库系统的核心。( T )
20.建立索引的目的是为了提高查询速度。( T )
21.建立索引的目的是为了节约存储空间。( F )
22.E-R图在需求分析阶段生成。( T )
23.SQL语言的视图定义和视图操作功能在一定程度上支持了数据的逻辑独立性。(T )
24.若对关系依次进行两次选择,则结果与两次操作的先后顺序无关。( T )
25.若R.A→R.B,R.B→R.C, 则R. A→R.C。( T )
26.数据库中的数据可以共享。( T )
27.关系代数的运算对象是关系,运算结果也为关系。( T )
28.只有两个属性的关系必是3NF。( F )
29.没有非主属性的关系必然属于3NF。( F )
30.数据库管理系统DBMS是操作系统的一部分。(T )

6. SQL数据库试题求解

------------------------------------------------------
create table students(st_id varchar(20),st_name varchar(50),sex varchar(10))

insert into students(st_id,st_name,sex)
select 'st001','张杰', '男' union all
select 'st002', '公孙燕飞' ,'男' union all
select 'st003', '王楠', '女' union all
select 'st004', '王伟', '男' union all
select 'st005','李燕纹', '女' union all
select 'st006', '孙武' ,'男'
select *
from students

create table teachers(t_id varchar(20),t_name varchar(50),t_lesson varchar(50))

insert into teachers

select 't001', '张老师' ,'数学' union all
select 't002', '李老师', '英语'

delete from results
create table results(r_id varchar(20),r_fenshu int,r_stid varchar(50),r_tid varchar(50))

insert into results
select 'r001','90', 'st001', 't002' union all
select 'r002', '68', 'st005', 't001' union all
select 'r003', '92', 'st003' ,'t001' union all
select 'r004', '82', 'st006', 't002' union all
select 'r005', '70', 'st002', 't002' union all
select 'r006', '86', 'st002', 't001' union all
select 'r007', '57', 'st003', 't002' union all
select 'r008', '76', 'st006', 't001' union all
select 'r009', '55', 'st001', 't001' union all
select 'r010', '77', 'st004', 't002' union all
select 'r011', '58', 'st005', 't002'
----------------------------------------------------------
1.
select st_id
from students
where st_name = '王伟'

2.select st_id,st_name
from students
where st_name like '__燕%'

3 select st_name,len(st_name) as 名字长度
from students
where sex ='男'

4 select min(r_fenshu) as 最低分数
from teachers t inner join results r on t.t_id =r.r_tid
where t_lesson ='数学' --这个是不考虑成绩中有null值的
5 select s.st_id as 学生编号,r_fenshu as分数,r_tid as 课目号
from students s inner join results r on s.st_id =r.r_stid
where s.sex='女'
--如果还要课目的名称的话请用下面的
select s.st_id as 学生编号,r.r_fenshu as 分数,r.r_tid as 课目号,t.t_lesson as 课目名称
from students s inner join results r on s.st_id =r.r_stid
inner join teachers t on r.r_tid = t.t_id
where s.sex='女'

6 select avg(r.r_fenshu)
from results r inner join teachers t on r.r_tid = t.t_id
where t.t_lesson='英语'

7.select *
from students s inner join results r on s.st_id =r.r_stid
inner join teachers t on r.r_tid = t.t_id
where s.st_id in (select top 2 st_id from students order by st_id desc)
order by s.st_id desc

8 select sum(r.r_fenshu) as 总分
from results r inner join students s on r.r_stid =s.st_id
where s.st_name = '王楠'
9.select distinct s.st_id,s.st_name
from students s inner join results r on s.st_id = r.r_stid
where st_id not in (select r_stid from results where r_fenshu<60) and st_id not in (select r_stid from results where r_fenshu >=90)

10 update results
set r_fenshu = r_fenshu + 10
--如果分数不可能大于100请用这句 set r_fenshu = case when r_fenshu + 10 <=100 then r_fenshu + 10 else 100 end
where r_stid in (select st_id from students where sex='女')

1 进阶题
select t.t_name,count(*)
from students s,teachers t,results r
where r.r_tid = t.t_id
and s.st_id =r.r_stid
and r.r_fenshu >= 60
and t.t_id in (select t_id from teachers where t_lesson='数学' )
--and t_lesson='数学'
group by t.t_name

2

select top 1 sum(r_fenshu) as 总分,t.t_lesson,t_id,t_name
from results r,teachers t
where r.r_tid = t.t_id
group by t.t_lesson,t_id,t_name
order by 总分 desc

3. delete from results where r_stid in (select r_stid from results group by r_stid having count(r_tid) = 1)

1 选做题
select d.name from sysobjects d where d.xtype='U'
2.select top 5 * from students order by newid()

7. 一些SQL的试题

1.应用程序
2.实体完整性
3.distince
4.
5.create Nonclustered index IDX_authors on authors(州名列,城市名列)
6.创建表
7.select 列名 from 表名
8.sum()
9.top
10.alter procere
11.ltrim()
12.declare @变量名 数据类型
13.where
14.from
15.order by
16.cast(表达式 as 数据类型)
17.count()
18.drop procere 存储过程名
19.创建数据库
20.价格大于15美元的所有数据
21.数据库
22.rollback
23.
24.服务管理器
25.
26.数据冗余(备份)
27.3
28.数据库
29.应用程序
30.drop table
33.操作系统
权限
1.
2.是并发控制的单位,是用户定义的一个操作序列,具有原子性,一致性,隔离性,持续性四个特性。
3.共享锁(S锁):如果事务T对数据A加上共享锁后,则其他事务只能对A再加共享锁,不能加排他锁.
获准共享锁的事务只能读数据,不能修改数据。
4.
5.
1.存储过程可以使得程序执行效率更高、安全性更好,因为过程建立之后 已经编译并且储存到数据库,直接写sql就需要先分析再执行因此过程效率更高,直接写sql语句会带来安全性问题,如:sql注入
2.建立过程不会很耗系统资源,因为过程只是在调用才执行。
6.聚簇索引是一种对磁盘上实际数据重新组织以按指定的一个或多个列的值排序。
7.
8.是并发控制的单位,是用户定义的一个操作序列,具有原子性,一致性,隔离性,持续性四个特性。
BEGIN TRAN [Tran_name]开始事务
COMMIT TRAN [Tran_name]事务完成提交事务
9.存储过程是由流控制和SQL语句书写的过程,这个过程经编译和优化后存储在数据库服务器中,应用程序使用时只要调用即可。
10.增量备份:是针对于上一次备份(无论是哪种备份):备份上一次备份后,所有发生变化的文件。
12.原子性,要么都做,要么不做。
13.排它锁若事务T对数据对象A加上X锁,则只允许T读取和修改A,其它任何事务都不能再对A加任何类型的锁,直到T释放A上的锁。
它防止任何其它事务获取资源上的锁,直到在事务的末尾将资源上的原始锁释放为止。
14.分布式数据库系统通常使用较小的计算机系统,每台计算机可单独放在一个地方,每台计算机中都有DBMS的一份完整拷贝副本,并具有自己局部的数据库,位于不同地点的许多计算机通过网络互相连接,共同组成一个完整的、全局的大型数据库。
15.
17同2,18同8
19.DBMS数据库管理系统,DBA数据库管理员
20.1对1,一个学生对应一个学号
1对多 一个学生对应多门功课
多对多 商品与厂商
(备注:只能做这么多了,很长时间没看书了,有时间可以看看<数据库系统概论>萨师煊 王珊 高等教育出版社,很不错的一本书哦。上有你要的答案,特别是简答题。)
21.
22.数据库完整性,对数据库提出的某种约束条件或规则。
分三种:实体完整性,参照完整性,用户自定义完整性
23.
24.原则如下:
●在经常进行连接,但是没有指定为外键的列上建立索引,而不经常连接的字段则由优化器自动生成索引。
●在频繁进行排序或分组(即进行group by或order by操作)的列上建立索引。
●在条件表达式中经常用到的不同值较多的列上建立检索,在不同值少的列上不要建立索引。比如在雇员表的“性别”列上只有“男”与“女”两个不同值,因此就无必要建立索引。如果建立索引不但不会提高查询效率,反而会严重降低更新速度。
●如果待排序的列有多个,可以在这些列上建立复合索引(compound index)。

26。聚集索引确定表中数据的物理顺序。由于聚集索引规定数据在表中的物理存储顺序,因此一个表只能包含一个聚集索引。但该索引可以包含多个列(组合索引)
非聚集索引一种索引,该索引中索引的逻辑顺序与磁盘上行的物理存储顺序不同。一个表可以有多个聚集索引

8. SQL数据库题

第一个
select*fromswheresnoin(
selectsnofromscwherecnoin(
selectcnofromcwherecteacher='李明'
)
)

第二个
selects.sname,sc,sum(sgrade)fromsleftjoinscons.sno=sc.sno
wheresc.sgrade>=60
groupbys.sname
第三个
createindexc_cno_indexONc(cno)

9. sql 数据库习题谢谢

1. select '类别为:'+tushuleibie 图书分类 from T_Book
2. select shuming 书名,zuozhe 作者,jiage*0.7 价格 from T_Book where chubanshe ='机械工业出版社'
3. select shuming 书名,zuozhe 作者,jiage 价格, chubanshe 出版社 from T_Book where jiage between 30 and 60
4. select top 3 shuming 书名,zuozhe 作者,chubanshe 出版社, jiage 价格 from T_Book order by jiage desc

6.select chubanshe 出版社,AVG(jaige) 平均价,MAX(jiage) 最高价 ,MIN(jaige) 最低价 from T_Book group by chubanshe order by SUM(jiage) desc

10.select top 1 chubanshe 出版社, count(*) 出版图书个数 from T_Book group by chubanshe order by COUNT(*) desc
book表的做好了 reader的自己做吧 字段名我用拼音做代替的 你自己替换成你表中的字段

10. 数据库期末考试题 编写SQL语句 1.创建一张学生表,包含以下信息,学号,姓名,年龄,性别,家庭住址,联系

create table 学生表
(
学号 char(10) primary key,
姓名 char(10),
年龄 int,
性别 char(2) check (sex IN ('男','女')),
家庭住址 char(40),
联系 char(20)
)