C.内连接和外连接完全一样,可以相互取代 D.内联查询只能连接一张表;
105.关于内连接以下说法不正确的是:( D )
A.关键字on表示连接条件
B.关键字inner join的inner 可以省略
C.在连接 t1 inner join t2 on ? 语句中t1对应t2为空的信息不会出现在连接之后的表中
D.内联查询只能连接一张表
106.视图是一种常用的数据对象,它是提供()和( )数据的另一种途径,可以
简化数据库操作。(AB)
A、存放B、检索C、更新D、插入
107.有如下SQL语句create view stock_view as select * from stock where 交
易所=”深圳”执行该语句后产生的视图包含的记录个数是(B ) A.1 B.2 C.3 D.4.A
108.有如下SQL语句create view view_stock as select 股票名称 as 名称,
单价 from stock执行该语句后产生的视图含有的字段名是(B ) A.股票、名称、单价 B.名称、单价
C 名称、单价、交易所 D 股票名称、单价、交易所
109.视图是(A)
A、视图是一种虚表,不存放实际数据值 B、视图与表完全相同,是表的别名
C、视图既不是基本表也不是虚表,而是关系的图标 D、视图是一种物理模式,一旦建立,就不能被删除
110.关于创建视图的正确的说法是:(C)。
A、只能基于基表创建视图B、视图中存放着数据
C、视图就是一个虚拟表D、视图的删除使用delete view命令
111.使用SELECT语句随机地从表中挑出指定数量的行,可以使用的方法是(A)。
A. 在ORDER BY子句中使用RAND()函数,并用LIMIT子句定义行数
B. 在LIMIT子句中使用RAND()函数指定行数,并用ORDER BY子句定义一个排序规则
C. 只要在ORDER BY子句中使用RAND()函数,不使用LIMIT子句 D. 只要使用LIMIT子句定义指定的行数即可,不使用ORDER BY子句
102.在SQL Server中,以下( b )不属于日期函数。(选择一项)
a.GetDate()b.DateTime() c.DateADD() d.DateDIFF()
103.在SQL Server中,有一张产品表products,产品发布时间为字段time,现
在查询最近一年内发布的产品信息,则以下SQL语句正确的是(b)。 a) select*from products where dateadd(1,yy,time)>=GETDATE() b) select*from products where dateadd(yy,1,time)>=GETDATE() c) select*from products where dateadd(time,yy,1)>=GETDATE() d) select*from products where datediff(1,yy,time)>=GETDATE()
104.在SQL Server中,有一张新闻表news,新闻发布时间为字段begintime,现
在查询最近一月内发表的新闻信息,则以下SQL语句正确的是(b)。 a.select*from news where dateadd(1,mm,begintime)>=GETDATE() b.select*from news where dateadd(mm,1,begintime)>=GETDATE() c.select*from news where dateadd(begintime,mm,1)>=GETDATE() d.select*from news where datediff(1,mm,begintime)>=GETDATE()
105.在SQL Server中,日期函数用于操作日期值,以下(d )函数可取得 当前
的系统日期。 (选择一项)
a) DATEDIFF b) GETDAY c) DATEPARTd) GETDATE
106.在SQL语言中,建立存储过程的命令是(A)
A、CREATE PROCEDURE B、CREATE RULE C、CREATE DURE D、CREATE FILE
107.当第一个用户修改数据时,第二个用户在第一个用户没有确认修改之前读取
了该数据,这时可能会出现(A )。
A脏读数据 B不可重复读C发生幻象 D无法确定
108.一个事务中的所有操作要么全部完成,要么全部不完成,这表明事务具有( A )。
A原子性 B一致性 C隔离性 D持久性
109.多个事务之间的操作应当是互不影响,互不相干的,这表明事务具有( C )。
A原子性B 一致性C 隔离性D 持久性
110.如果要回滚一个事务,则要使用( B )语句。
A、 revoke B、rollback transaction C、commit transaction D、begin transaction
111.如果要阻止其它事务更改当前事务正在读取的数据,那么最恰当方法是对该
数据(B )。
A、加上共享锁 B、加上排他锁 C、加上更新锁 D、不封锁
112.在下列规模的数据库表中,建立索引提高查询速度最明显的是( D )。
A、100条记录B、1000条记录C、10,000条记录D、100,000条记录
113.当某一个用户对某一行数据进行多次读取过程中,另外一个用户对该数据行
进行了修改,从第一个用户的角度来看,会发生两次读取数据库中同 一个数据会出现不同的值。这种异常情况是( B )。
A、读脏数据B、不可重复读C、发生幻象 D、丢失修改
114.索引的顺序和数据表的物理顺序相同的索引是(C )。 A.聚集索引 B.非聚集索引 C.主键索引 D.唯一索引
115.UNIQUE惟一索引的作用是(D)。
A. 保证参加惟一索引的各列,不得再参加其他的索引。 B. 保证各行在该索引上的值不得为NULL。 C. 保证惟一索引不能被删除。
D. 保证各行在该索引上的值都不得重复。
二多选题
1.以下关于数据库说法正确是( ABCD ) A、数据库是由一批数据构成有序的集合
B、可以将数据库视为一个存储数据的容器 C、一个数据库可以包含多个数据表
D、对数据库进行查询和修改操作的语言叫SQL
2.当今主流的数据库有(ABD )
A、mysql B、oracle C、javascript D、sql server
3.数据库管理系统根据数据模型对数据进行存储和管理,数据库管理系统采用的
数据模型包括( BC )
A、直线模型 B、网状模型 C、关系模型 D、散点模型
4.SQL中DDL操作包含的关键字是(AB)
A,CREATE B,ALTER C,ADD D,DELETE
5.下列属于关系数据库的是(ABCD)
A,DB2 B, MYSQL C, SQL Server D,ORACLE
6.数据操纵语言包括(ABC)
A. insertB.update C.delete D.create
7.数据控制语言包括(AB)
A.GRANT B.REVOKE C.SELECT D.update
8.关系模式的外键可以有( C ),主键有( B )。 A.0个 B.1个 C.1个或多个 D.多个
9.下列关于约束的说法正确的是( ABC ) A、创建表时可以创建约束 B、主键约束是约束的一种 C、约束有列级约束和表级约束 D、不能再给创建好的表添加约束
10.下面属于SQL-SERVER中约束的是( AB )
A、not null B. primary key C.auto_increment D.order by
11.何时可以为数据表添加约束( AC )
A.在建表的同时为相应的数据列添加约束 B. 在建表的不能为相应的数据列添加约束
C.建表后创建,以修改表的方式来增加约束 D.只能创建表时,添加相应的约束
12.下列类型能够存储‘2014年3月8日’的是(BC) A,time B, datetime C,date D,year
13.下列能够存储家庭住址的类型为(BCD) A,int B,char C,varchar D,text
14.下列数据类型中可以用来存储年龄的是(ABCD) A,tinyint B, int C,bigint D,smallint
15.给数据库重命名会用到下列哪些关键字(AD) A,ALTER B,NAME C,CREATE D,RENAME
16.已知小明创建空数据表aa,表的包含两个字段分别为id int primary key,
name varchar(20),则下列数据可以插入的是( BC )
A、insert into aa values(1,’lucy’),(1,’lily’); B、insert into aa (id ,name) values(1,’lucy’),(2,’lily’); C、insert into aa (id ,name) values (4,null);
D、insert into aa (id ,name) values(’lucy’),(’lily’);
17.已知员工表emp(empno,ename,job,sal,comm,deptno),查询所有员工的信息,
按sal升序排序,正确的sql语句是(AB ) A、select * from emp order by sal asc ; B、select * from emp order by sal ; C、select * from emp order by sal desc ; D、select * from emp group by sal ;
18.在SQL SERVER中,下面关于子查询的说法你认为正确的是(cd )。 A. 应用简单子查询的SQL语句的执行效率比采用SQL变量的实现方案要低 B. 带子查询的查询执行顺序是,先执行父查询,再执行子查询
C. 表连接一般都可以用子查询替换,但有的子查询不能用表连接替换
D. 如果一个子查询语句一次返回二个字段的值,那么父查询的where子句中应该使用NOT EXISTS关键字
19.已知关系:
员工(员工号,姓名,部门号,薪水) PK=员工号 FK=部门号
部门(部门号,部门名称,部门经理员工号) PK=部门号 FK=部门经理员工号
现在要查询部门员工的平均工资大于3000的部门名称及平均工资,下面哪两句查询正确:(AC)。
A、SELECT 部门名称,AVG(薪水) FROM 部门 P,员工 E WHERE E.部门号=(SELECT部门号 FROM 部门 WHERE 部门名称 = P.部门名称) GROUP BY 部门名称 HAVING AVG(薪水)> 3000
B、SELECT 部门描述,AVG(薪水) FROM 部门 P INNER JOIN 员工 E ON P.部门号=E.部门号 GROUP BY 部门描述 WHERE AVG(薪水)> 3000
C、SELECT 部门描述,AVG(薪水) FROM 部门 P INNER JOIN 员工 E ON P.部门号=E.部门号 GROUP BY 部门描述 HAVING AVG(薪水)> 3000
D、SELECT 部门描述,AVG(薪水) FROM 部门 P,员工 E WHERE P.部门号=(SELECT部门号 FROM 部门 WHERE 部门名称 = P.部门名称) GROUP BY 部门名称 HAVING AVG(薪水)> 3000
20.已知关系:
员工(员工号,姓名,部门号,薪水) PK=员工号 FK=部门号
部门(部门号,部门名称,部门经理员工号) PK=部门号 FK=部门经理员工号
现在要查询部门员工的平均工资大于3000的部门名称及平均工资,下面哪两句查询正确:(AC)。A、SELECT 部门名称,AVG(薪水) FROM 部门 P,员工 E WHERE E.部门号=(SELECT部门号 FROM 部门 WHERE 部门名称 = P.部门名称) GROUP BY 部门名称 HAVING AVG(薪水)> 3000 B、SELECT 部门描述,AVG(薪水) FROM 部门 P INNER JOIN 员工 E ON P.部门号=E.部门号 GROUP BY 部门描述 WHERE AVG(薪水)> 3000 C、SELECT 部门描述,AVG(薪水) FROM 部门 P INNER JOIN 员工 E ON P.部门号=E.部门号 GROUP BY 部门描述 HAVING AVG(薪水)> 3000
D、SELECT 部门描述,AVG(薪水) FROM 部门 P,员工 E WHERE P.部门号=(SELECT部门号 FROM 部门 WHERE 部门名称 = P.部门名称) GROUP BY 部门名称 HAVING AVG(薪水)> 3000
21.请指出下列正确的内联结语句:(AD)。
A、SELECE a.CompanyName, b.OrderID FROM Customers a, Orders b where a.CustomerID = b.CustomerID B、SELECE a.CompanyName, b.OrderID FROM Customers a INNER JOIN Orders b WHERE ( a.CustomerID = b.CustomerID )
C、SELECE a.CompanyName, b.OrderID FROM Customers a FULL OUTER JOIN Orders b ON ( a.CustomerID = b.CustomerID )