您的位置:首页 > 数据库

数据库练习1

2020-08-10 17:16 996 查看

1.用于事务回滚的 SQL 语句是? ( )
A.create table
B.commit
C.grant和revoke
D.rollback

解析:选D,create table是建表,commit是提交,grant是赋予权限,revoke是收回权限,rollback是事务回滚。

2.以下SQL语句的作用是:()
SELECT count(*) FROM ‘t_users’ where id <> 0
A.t_users表id等于0的全部记录
B.t_users表id不等于0的全部记录
C.t_users表id等于0的记录数量
D.t_users表id不等于0的记录数量

解析:选D,select是查询语句,count(*)聚合函数的一种,返回int类型的表中记录数,where条件子句 where id <> 0表示id不等于0,sql的逻辑运算符 <>和!= 都是不等于的意思。

3.在 SQL 语言中,DELETE 语句的作用是()。
A.删除基本表
B.删除视图
C.删除基本表和视图
D.删除基本表和视图的元组

解析:选D,DELETE语句属于数据操纵语句,其作用是删除基本表和视图中的元组(只能删除表和视图里面的数据),而不能删除基本表、视图和索引。删除基本表、视图和索引使用的动词是DROP。

4.当局部 E-R 图合并成全局 E-R 图时可能出现冲突,不属于合并冲突的是( )。
A.属性冲突
B.语法冲突
C.结构冲突
D.命名冲突

解析:选B,合并E-R图的冲突主要有:属性冲突,命名冲突,结构冲突。

5.athletes 表包含运动员姓名,年纪和代表国家。下面哪个查询可以找出代表每个国家最年轻的运动员情况?
A.SELECT name, country, age FROM athletes WHERE (country, age) IN (SELECT country, min(age) FROM athletes GROUP BY country)
B.SELECT name, country, age FROM athletes WHERE (country, age) IN (SELECT min(age), country FROM athletes GROUP BY country)
C.SELECT name, country, age FROM athletes WHERE (country, age) IN (SELECT country, min(age) FROM athletes) GROUP BY country
D.SELECT name, country, age FROM athletes WHERE age IN (SELECT country, min(age) FROM athletes GROUP BY country)

解析:选A,select查询语句+所选择的列名+from+表名+where条件选择+国家,年龄+in进行筛选+查询出国家,年龄最小的运动员+from+athletes表+group by分组+以国家分组。

6.employee的表结构及数据结构如图所示,以下语句结果分别为:

ID Name Score
1 jack 1
2 tom 1
3 rose null

select count(*) from employee;
select count(1) from employee;
select count(Score) from employee;

A.3,1,3
B.3,3,2
C.3,1,2
D.3,3,1

解析:选B,count( * )是查询全部的记录条数(表达式是否为NULL,如果为NULL则不计数,其他计总数)
count(数字),和count( * )效果一样,有几条记录就显示几
count(属性名)则查询该属性名下面的非null数据的个数
count( )则报错
select count(*) 或者 count(1)或者count(‘anything’) from tablename 则都可以统计到表中所有行数。

7.已知关系:厂商(厂商号,厂名) PK= 厂商号

产品(产品号,颜色,厂商号) PK= 产品号, FK= 厂商号

假设两个关系中已经存在如图 4 所示元组:

厂商 产品


若再往产品关系中插入如下元组:

I(P03,红,C02) II(P01,蓝,C01)

III(P04,白,C04) IV(P05,黑,null)
能够插入的元组是()。
A.I,II,IV
B.I,III
C.I,II
D.I,IV

解析:选D,数据库的外键可以为空,但是如果非空,则这个值必须在主表中存在。

8.用于连接两个字符串的运算符是 ()
A.+
B.&&
C.&
D.and

解析:选C,连接运算符主要用于连接字符串,其运算符有两个:+,&。
&用来强调两个表达式作为字符串连接,如“hello”&23&“word”,结果为“hello23word”
+连接两个字符串,要求+两端的类型必须一致,如“hello”+23+“word”,结果会报错“类型不匹配”
因此一般使用&连接两个字符串。

9.哪些字段适合建立索引?()
A.在select子句中的字段
B.外键字段
C.主键字段
D.在where子句中的字段

解析:选B C D
题目来源:牛客网:https://www.nowcoder.com/

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: