《数据库原理应用》简答题(数据库原理与应用试题及答案)

《数据库原理应用》简答题(数据库原理与应用试题及答案),第1张

1数据库:是以某种文件结构存储的一系列信息表,这种文件结构使您能够访问这些表、选择表中的列、对表进行排序以及根据各种标准选择行。数据库通常有多个索引与这些表中的许多列相关联,所以我们能尽可能快地访问这些表。数据库管理系统:随着计算机在信息处理、情报检索及各种管理系统的不断发展,使用计算机时需要处理大量的数据、建立和检索大量的表格,将这些数据和表格按一定的规律组织起来,以便处理更有效、检索更迅速、用户使用更方便,于是就出现了数据库管理系统。数据库和数据库软件就组成了数据库管理系统。数据库管理系统有各种类型,目前许多计算机包括微型机都配有数据库管理系统,如FoxPro、Oracle、sqlserver等。

2数据库系统由数据库(DB),数据管理系统(DBMS),应用程序,用户和硬件组成,其中最关键的部分是数据库3主关键字(Primarykey):用来唯一辨别表格里记录的备选关键字。外来关键字(Foreignkey):表格内匹配同一表格或者另一表格里备选关键字的一个列或者一组列。外来键允许你将一个表格里的记录和另一个表格里的数据相关联。有主外键关系,进行两个表或多个表的关联。

5SELECT 学号,姓名,专业

FROM 学生表

WHERE 课程号 NOT IN 'C135'

GO

6 SELECT 学号,姓名,课程名,分数

FROM 学生表,课程表,成绩表

WHERE (学生表学号=成绩表学号,成绩表课程号=成绩表课程号,课程表课程名='英语)'

GO

7SELECT 学号,姓名,专业,分数

FROM 学生表 ,成绩表

WHERE (学生表学号=成绩表学号,分数 BETWEEN 90 AND 100)

GO

8 CREATE TABLE S

GO

10select 学号,姓名,性别

FROM 学生表

WHERE 学生表班级 = '04电子商务',姓名 LIKE '张%'

GO

其他的也不难 我是学了一学期的,现在要考试了,这些有的还是有问题的 哦,全是自己临场写的 ,锻炼我的SQL 语句的书写

(1)已知表T1中有2行数据,T2中有3行数据,执行SQL语句

“select a from T1 a,T2 b”后,返回的行数为______

A、2行

B、3行

C、5行

D、6行

多表查询没有指定连接条件,会导致笛卡尔积的出现,返回行数等于2张表的行数乘积,返回6行记录

考察:对多表连接、笛卡尔积的理解

答案:A

(2)、已知表T1和T2的字段定义完全相同,T1,T2中各有5条不同的数据,其中T1有2条数据存在于表T2中,语句“select from T1 union select from T2”

返回的行数为_______

A、8行

B、10行

C、3行

D、12行

第二题 UNION在进行表链接后会筛选掉重复的记录,所以在表链接后会对所产生的结果集进行排序运算,删除重复的记录再返回结果。

考察:UNION 的理解

答案: A

(3)、 已知表T1含有字段ID、CourseID和Score,且数据为

ID CourseID Score

3 1 90

2 1 85

2 2 90

3 2 80

则语句“select id,sum(ScorE) from T1 group by ID”的执行结果为_________

A、 ID sum(ScorE)

—– ———-

3 170

2 175

B、 ID sum(ScorE)

—– ———-

2 175

3 170

C、 ID sum(ScorE)

—– ———-

2 170

3 175

D、 ID sum(ScorE)

—– ———-

3 175

2 170

第三题 GROUP BY 对按照ID字段进行分组,同时对ID相同字段的ScorE进行求和,GROUP by 会自动对结果集进行排序所以答案选B

考察:group by 的理解

答案: B

(4)、电话号码表t_phonebook中含有100万条数据,其中号码字段PhoneNo上创建了唯一索引,且电话号码全部由数字组成,要统计号码头为321的电话号码的数量,下面写法执行速度最慢的是_________

A、 select count() from t_phonebook where phoneno >= ‘321’ and phoneno < ‘321A’

B、 select count() from t_phonebook where phoneno like ‘321%’

C、 select count() from t_phonebook where substring(phoneno,1,3) = ‘321’

A>或者< *** 作符会采用索引查找

B:LIKE通配符在XXX%情况下会应用索引,如果在%xxx%等情况下不会应用索引

答案: C:采用函数处理的字段不能利用索引,例如substr() 这个题好像写成java的函数了

答案: C

(5)、已知表tbl中字段land_ID建有索引,字段cust_id建有唯一索引,下列语句查询逻辑相同,其中执行效率最优的是

A、 SELECT FROM tbl

WHERE land_id > 750

or (cust_id=180 or cust_id=560)

B、 SELECT FROM tbl

WHERE (cust_id=180 or cust_id=560)

or land_id > 750

C、 SELECT FROM tbl WHERE land_id > 750

UNION

SELECT FROM tbl WHERE cust_id = 180

UNION

SELECT FROM tbl WHERE cust_id = 560

D、 SELECT FROM tbl WHERE land_id > 750

UNION

( SELECT FROM tbl WHERE cust_id = 180

UNION ALL

SELECT FROM tbl WHERE cust_id = 560

)

C/D相比较而言,D的执行效率更高一些

UNION在进行表链接后会筛选掉重复的记录,所以在表链接后会对所产生的结果集进行排序运算,删除重复的记录再返回结果。实际大部分应用中是不会产生重复的记录

采用UNION ALL *** 作符替代UNION,因为UNION ALL *** 作只是简单的将两个结果合并后就返回。

(6)、员工技能表Staffskill结构如下,Staff和Skill字段建有唯一约束

staff VARCHAR2(10),

skill VARCHAR2(10)

哪条语句可以查询同时拥有技能A和技能B的员工

A、 select staff from Staffskill where skill=’A’ OR skill=’B’

B、 select staff from Staffskill where skill=’A’ AND skill=’B’

C、 select staff from Staffskill where skill=’A’ OR skill=’B’ group by staff

D、 select staff from Staffskill where skill=’A’ OR skill=’B’ group by staff having count()>1

答案:D

(7)员工表staff表结构如下

staffNo varchar2(10),

Email varchar2(50)

哪一个SQL语句查询出没有E_mail地址的员工号

A、select staffno from Staff where Email = NULL

B、select staffno from Staff where Email <> NULL

C、select staffno from Staff where Email is null

D、select staffno from Staff where Email is not null

答案: C

(8)Oracle数据库启动步骤的顺序为

1Mount 2Open 3Nomount

A、3-1-2

B、2-3-1

C、2-1-3

D、3-2-1

答案:A

(9)存在两个结构相同的数据库表T1(col1,col2,col3)、T2(col1,col2,col3),写出一SQL语句将所有T1数据导入到T2表

A、select col1,col2,col3 from T1 INTO T2 (col1,col2,col3)

B、INSERT T1 (col1,col2,col3) INTO T2(col1,col2,col3)

C、insert into T2 (col1,col2,col3) AS select col1,col2,col3 from T1;

D、insert into T2 (col1,col2,col3) select col1,col2,col3 from T1;

答案: D

10)一个表的字段为varchar2,如果建表时没有指定长度,则默认长度为:

A、1

B、25

C、38

D、255

E、4000

F、建表时varchar2类型字段必须指定长度

答案:F

(11)用TRUNCATE和DELETE语句删除表中数据的区别

A、TRUNCATE命令不记录日志

B、TRUNCATE命令记录日志

C、DELETE命令不记录日志

答案:A

(12)如下查询语句SELECT id_number,100/quantity from inventory如果quantity为空,则查询语句的第二个字段将返回

A、 a space

B、 a null value

C、 a value of 0

D、 a value of 100

E、 the keywork null

答案:B

(13)如下语句:SELECT iid_number,mid_number FROM inventory i,manufacturer m

WHERE imanufacturer_id = mid_number

Order by inventorydescription

执行时是错误的,请问以下措施哪个能够改正这个错误

A 在order by的子句中使用表的别名

B 在where子句中去掉表的别名

C 在where子句中用表名代替表的别名

D 在order by子句中去掉表名,只要字段名称即可

(如果2张表中,不同时存在字段名为description的话,D答案也是正确的)

答案:A

14)A表字段a 类型int中有100条记录,值分别为1至100。如下语句

SELECT a FROM A

WHERE A BETWEEN 1 AND 50

OR (A IN (25,70,95)

AND A BETWEEN 25 AND 75)

则如下哪个值在这个sql语句返回的结果集中

A、30 B、51 C、75 D、95

答案:A

15) 变量v_time = ‘23-MAY-00’,如下那条语句返回值为‘01-JAN-00’

A SELECT ROUND(V_TIME,’DAY’) FROM DUAL;

B SELECT ROUND(V_TIME,’YEAR’) FROM DUAL;

C SELECT ROUND(V_TIME,’MONTH’) FROM DUAL;

D SELECT ROUND(TO_CHAR(V_TIME,’YYYY’)) FROM DUAL;

答案:B

16)关于索引(index)的说法哪些是错误

A、创建索引能提高数据插入的性能

B、索引应该根据具体的检索需求来创建,在选择性好的列上创建索引

C、索引并非越多越好

D、建立索引可使检索 *** 作更迅速

答案: A

(17)指出下面sql语句的错误之处:

select id_number “Part Number”,sum(price) “price” from inventory

where price > 50

group by “Part Number”

order by 2;

A、order by 2

B、from inventory

C、 where price > 50

D、group by “Part Number”

答案:D

(18)如下语句

if v_num > 5 then

v_example := 1;

elsif v_num > 10 then

v_example := 2;

elsif v_num < 20 then

v_example := 3;

elsif v_num < 39 then

v_example := 4;

else v_example := 5;

如果v_num = 37,则v_example的值是多少

A、1 B、2 C、3 D、4 E、5

答案:A

练习题二

1) sp_helpdb 该代码的功能是:

A 返回数据库的基本信息

B 返回数据库的`使用空间

C 返回数据库的变量名称

D 返回数据库的表名

2) sp_helpdb中有这样一条信息:Updateability=Read_Write 该代码表示的正确含义是:

A 更新能力为可读可写

B 恢复模式为完整恢复

C 可用于所有用户

D 兼容级别

3) sp_helpdb中有这样一条信息:status = online 该代码表示的正确含义是:

A 表示数据库的状态为:可用于查询

B 表示数据库的状态为:正在还原数据库

C 表示数据库的状态为:数据库未恢复

D 表示数据库已被显示置于脱机状态

4) sp_helpdb中有这样一条信息:IsFulltextEnabled 该代码的正确含义是:

A 数据库自动生成统计信息

B 自动更新统计信息

C 数据库已启用全文功能。

D 数据库引擎检测信息

5) sp_helpdb中有这样一条信息:COMPATIBILITY_LEVEL =90 该代码表示的正确含义是:

A 数据库兼容级别是 2000

B 数据库兼容级别是 2005

C 数据库兼容级别是 2008

D 以上说法都不对

6) 数据定义语言中的 创建,修改,删除这三个英语单词 下列哪项才是完全正确的

A 创建(create) , 修改(alter) , 删除(update)

B 创建(alter) , 修改(modify), 删除(drop)

C 创建(create) , 修改(alter) , 删除(drop)

D 创建(alter) , 修改(create), 删除(drop)

7) SQL 2005 的建表语句要写在______之内

A { }

B [ ]

C ( )

D <>

8) 建表语句中的 not null,该代码表示的含义是:

A 允许空格B 非空约束

C 不允许写入数据

D 不允许读取数据

9) select from student 该代码中的 号,表示的正确含义是:

A 普通的字符号

B 错误信息

C 所有的字段名

D 模糊查询

10) 向数据表添加数据,哪些是添加的关键字

A insert

B update

C delete

D select

更多计算机二级考试相关试题分享:

---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) 修改学生表的结构,添加一列信息,学历 education

alter table student add education nvarchar(10) NULL

--3) 修改学生表的结构,删除一列信息,家庭住址

alter table student drop column address

--5) 修改学生表的数据,将电话号码以11开头的学员的学历改为“大专”

update student set education='大专' 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 education='大专'

--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

以上就是关于《数据库原理应用》简答题(数据库原理与应用试题及答案)全部的内容,包括:《数据库原理应用》简答题(数据库原理与应用试题及答案)、急救!谁帮我做一下数据库的模拟试卷、IBM认证数据库考试试题等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/10106292.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-05
下一篇2023-05-05

发表评论

登录后才能评论

评论列表(0条)

    保存