|
http://wenku.baidu.com/view/f9eeb237a32d7375a41780d5.html
http://download.csdn.net/download/xzg3509/479892
http://www.51jobdoc.com/TypeDesign/Database/1_33.html
http://www.mianwww.com/html/category/it-interview/database
1. 存储过程和函数的区别
存储过程需要单独执行; 函数可以随处调用。 存储过程是保存起来的可以接受和返回用户提供的参数的 Transact-SQL 语句的集合。 可以创建一个过程供永久使用,或在一个会话中临时使用(局部临时过程),或在所有会话中临时使用(全局临时过程)。 用户定义函数,它是返回值的已保存的 Transact-SQL 例程。用户定义函数不能用于执行一组修改全局数据库状态的操作。 与系统函数一样,用户定义函数可以从查询中唤醒调用。也可以像存储过程一样,通过 EXECUTE 语句执行。
自定义函数 有且只有一个返回值,就像普通的函数一样,可以直接在表达式中嵌入调用。 存储过程 可以没有返回值,也可以有任意个输出参数,必须单独调用。
1 存储过程不一定非要有返回值 数据库中的函数一定有返回值
2 存储过程在前台语言可以直接调用 而函数一般要有sql语句做为载体
本质上没区别。只是函数有如:只能返回一个变量的限制。而存储过程可以返回多个。而函数是可以嵌入在sql中使用的,可以在select中调用,而存储过程不行。执行的本质都一样。
函数限制比较多,比如不能用临时表,只能用表变量.还有一些函数都不可用等等.而存储过程的限制相对就比较少
1. 一般来说,存储过程实现的功能要复杂一点,而函数的实现的功能针对性比较强。
2. 对于存储过程来说可以返回参数,而函数只能返回值或者表对象。
3. 存储过程一般是作为一个独立的部分来执行(EXEC执行),而函数可以作为查询语句的一个部分来调用(SELECT调用),由于函数可以返回一个表对象,因此它可以在查询语句中位于FROM关键字的后面。
4. 当存储过程和函数被执行的时候,SQL Manager会到procedure cache中去取相应的查询语句,如果在procedure cache里没有相应的查询语句,SQL Manager就会对存储过程和函数进行编译。
2. 事务是什么?
数据库事务(Database Transaction) ,是指作为单个逻辑工作单元执行的一系列操作。事务处理可以确保除非事务性单元内的所有操作都成功完成,否则不会永久更新面向数据的资源。通过将一组相关操作组合为一个要么全部成功要么全部失败的单元,可以简化错误恢复并使应用程序更加可靠。一个逻辑工作单元要成为事务,必须满足所谓的ACID(原子性、一致性、隔离性和持久性)属性。
3. 游标的作用?如何知道游标已经到了最后?
游标(cursor)是系统为用户开设的一个数据缓冲区,存放SQL语句的执行结果。每个游标区都有一个名字。
游标提供了一种对从表中检索出的数据进行操作的灵活手段,就本质而言,游标实际上是一种能从包括多条数据记录的结果集中每次提取一条记录的机制。
借助于游标来进行面向单条记录的数据处理。游标允许应用程序对查询语句select 返回的行结果集中每一行进行相同或不同的操作,而不是一次对整个结果集进行同一种操作。
主语言是面向记录的,一组主变量一次只能存放一条记录。仅使用主变量并不能完全满足SQL语句向应用程序输出数据的要求。嵌入式SQL引入了游标的概念,用来协调这两种不同的处理方式,正是游标把作为面向集合的数据库管理系统和面向行的程序设计两者联系起来,使两个数据处理方式能够进行沟通。
关系数据库中的操作会对整个行集起作用。由 SELECT 语句返回的行集包括满足该语句的 WHERE 子句中条件的所有行。这种由语句返回的完整行集称为结果集。应用程序,特别是交互式联机应用程序,并不总能将整个结果集作为一个单元来有效地处理。这些应用程序需要一种机制以便每次处理一行或一部分行。游标就是提供这种机制的对结果集的一种扩展。
游标的特点是:
允许定位在结果集的特定行。
从结果集的当前位置检索一行或一部分行。
支持对结果集中当前位置的行进行数据修改。
为由其他用户对显示在结果集中的数据库数据所做的更改提供不同级别的可见性支持。
提供脚本、存储过程和触发器中用于访问结果集中的数据的 Transact-SQL 语句
在从游标中提取信息后,可以通过判断@@FETCH_STATUS 的值来判断是否到了最后。当@@FETCH_STATUS为0的时候,说明提取是成功的,否则就可以认为到了最后。
4. 触发器分为事前触发和事后触发,这两种触发有和区别。语句级触发和行级触发有何区别
触发器(trigger)是个特殊的存储过程,它的执行不是由程序调用,也不是手工启动,而是由事件来触发,比如当对一个表进行操作( insert,delete, update)时就会激活它执行。触发器经常用于加强数据的完整性约束和业务规则等。
事前触发器运行于触发事件发生之前,而事后触发器运行于触发事件发生之后。通常事前触发器可以获取事件之前和新的字段值。
语句级触发器可以在语句执行前或后执行,而行级触发在触发器所影响的每一行触发一次。
分析:简单而言,事前触发主要是验证一些条件或进行一些准备工作,在表保存之前就触发,而事后触发则是进行收尾工作,保证事务的完整性,在表经过修改以后才触发。行级触发器是对DML语句影响的每个行执行一次,如UPDATE语句影响多行,就会对每行都激活一次触发器。而语句级触发器是对每个DML语句执行一次,如INSERT语句在表中即使插入了100多行,表上的INSERT语句级触发器也只会执行一次。
5. ORACLE系统进程主要有哪些?作用是什么?
数据写进程(dbwr):负责将更改的数据从数据库缓冲区高速缓存写入数据文件
日志写进程(lgwr):将重做日志缓冲区中的更改写入在线重做日志文件 系统监控(smon) :检查数据库的一致性如有必要还会在数据库打开时启动数据库的恢复 进程监控(pmon) :负责在一个Oracle 进程失败时清理资源 检查点进程(chpt):负责在每当缓冲区高速缓存中的更改永久地记录在数据库中时,更新控制文件和数据文件中的数据库状态信息。 归档进程(arcn) :在每次日志切换时把已满的日志组进行备份或归档 作业调度器(cjq) :负责将调度与执行系统中已定义好的job,完成一些预定义的工作. 恢复进程(reco) :保证分布式事务的一致性,在分布式事务中,要么同时commit,要么同时rollback; 6. 你必须利用备份恢复数据库,但是你没有控制文件,该如何解决问题?
重建控制文件,用带backup control file 子句的recover 命令恢复数据库。
7. 如何转换init.ora到spfile?
使用create spfile from pfile 命令
8. 解释data block, extent, segment(建议用英文术语)
data block是数据库中最小的逻辑存储单元。当数据库的对象需要更多的物理存储空间时,连续的data block就组成了extent . 一个数据库对象拥有的所有extents被称为该对象的segment.
9. 给出两个检查表结构的方法
1.DESCRIBE命令
2.DBMS_METADATA.GET_DDL 包
10. 怎样查看数据库引擎的报错
alert log.
11. 请问ORACLE数据库的多层结构怎样解释
12. 现有sql server数据库,要将起导入到ORACLE数据库中,其中Excel表格以附件形式存在sql server数据库中,现在想将Excel表格中的数据一起导入到ORACLE数据库中,请写出你的思路?
13. 你最擅长ORACLE数据库中的哪一部分?
14. 随意说说你觉得ORACLE数据库中最有意思的部分或者最难得部分?
15.有两个表A和B,均有key和value两个字段,如果B的key在A 中也有,就把B的value换为A中对应的value这道题的SQL语句怎么写?
16.一百个账户各有100$,某个账户某天如有支出则添加一条新记录,记录其余额。一百天后,请输出每天所有账户的余额信息
17.建三个表,用一条SQL语句查处学生的总成绩,平均成绩和缺考的科目
18.某个表有两个字段(phone和sendtime)取出每个号码(phone)的最新发送时间(sendtime)的记录
19.一个表中的Id有多个记录,把所有这个id的记录查出来,并显示共有多少条记录数
-----------------------------------------------------------------------华丽的分割线---------------------------------------------------------------------
1.一道SQL语句面试题,关于group by
表内容:
2005-05-09 胜
2005-05-09 胜
2005-05-09 负
2005-05-09 负
2005-05-10 胜
2005-05-10 负
2005-05-10 负
如果要生成下列结果, 该如何写sql语句?
胜 负
2005-05-09 2 2
2005-05-10 1 2
------------------------------------------
create table #tmp(rq varchar(10),shengfu nchar(1))
insert into #tmp values('2005-05-09','胜')
insert into #tmp values('2005-05-09','胜')
insert into #tmp values('2005-05-09','负')
insert into #tmp values('2005-05-09','负')
insert into #tmp values('2005-05-10','胜')
insert into #tmp values('2005-05-10','负')
insert into #tmp values('2005-05-10','负')
1)select rq, sum(case when shengfu='胜' then 1 else 0 end)'胜',sum(case when shengfu='负' then 1 else 0 end)'负' from #tmp group by rq
2) select N.rq,N.勝,M.負 from (
select rq,勝=count(*) from #tmp where shengfu='胜'group by rq)N inner join
(select rq,負=count(*) from #tmp where shengfu='负'group by rq)M on N.rq=M.rq
3)select a.col001,a.a1 胜,b.b1 负 from
(select col001,count(col001) a1 from temp1 where col002='胜' group by col001) a,
(select col001,count(col001) b1 from temp1 where col002='负' group by col001) b
where a.col001=b.col001
2.请教一个面试中遇到的SQL语句的查询问题
表中有A B C三列,用SQL语句实现:当A列大于B列时选择A列否则选择B列,当B列大于C列时选择B列否则选择C列。
------------------------------------------
select (case when a>b then a else b end ),
(case when b>c then b esle c end)
from table_name
3.面试题:一个日期判断的sql语句?
请取出tb_send表中日期(SendTime字段)为当天的所有记录?(SendTime字段为datetime型,包含日期与时间)
------------------------------------------
select * from tb where datediff(dd,SendTime,getdate())=0
4.有一张表,里面有3个字段:语文,数学,英语。其中有3条记录分别表示语文70分,数学80分,英语58分,请用一条sql语句查询出这三条记录并按以下条件显示出来(并写出您的思路):
大于或等于80表示优秀,大于或等于60表示及格,小于60分表示不及格。
显示格式:
语文 数学 英语
及格 优秀 不及格
------------------------------------------
select
(case when 语文>=80 then '优秀'
when 语文>=60 then '及格'
else '不及格') as 语文,
(case when 数学>=80 then '优秀'
when 数学>=60 then '及格'
else '不及格') as 数学,
(case when 英语>=80 then '优秀'
when 英语>=60 then '及格'
else '不及格') as 英语,
from table
5.在sqlserver2000中请用sql创建一张用户临时表和系统临时表,里面包含两个字段ID和IDValues,类型都是int型,并解释下两者的区别?
------------------------------------------
用户临时表:create table #xx(ID int,>
系统临时表:create table ##xx(ID int,> 区别:
用户临时表只对创建这个表的用户的Session可见,对其他进程是不可见的.
当创建它的进程消失时这个临时表就自动删除.
全局临时表对整个SQL Server实例都可见,但是所有访问它的Session都消失的时候,它也自动删除.
6.sqlserver2000是一种大型数据库,他的存储容量只受存储介质的限制,请问它是通过什么方式实现这种无限容量机制的。
------------------------------------------
它的所有数据都存储在数据文件中(*.dbf),所以只要文件够大,SQL Server的存储容量是可以扩大的.
SQL Server 2000 数据库有三种类型的文件:
主要数据文件
主要数据文件是数据库的起点,指向数据库中文件的其它部分。每个数据库都有一个主要数据文件。主要数据文件的推荐文件扩展名是 .mdf。
次要数据文件
次要数据文件包含除主要数据文件外的所有数据文件。有些数据库可能没有次要数据文件,而有些数据库则有多个次要数据文件。次要数据文件的推荐文件扩展名是 .ndf。
日志文件
日志文件包含恢复数据库所需的所有日志信息。每个数据库必须至少有一个日志文件,但可以不止一个。日志文件的推荐文件扩展名是 .ldf。
7.请用一个sql语句得出结果
从table1,table2中取出如table3所列格式数据,注意提供的数据及结果不准确,只是作为一个格式向大家请教。
如使用存储过程也可以。
table1
月份mon 部门dep 业绩yj
-------------------------------
一月份 01 10
一月份 02 10
一月份 03 5
二月份 02 8
二月份 04 9
三月份 03 8
table2
部门dep 部门名称dname
--------------------------------
01 国内业务一部
02 国内业务二部
03 国内业务三部
04 国际业务部
table3 (result)
部门dep 一月份 二月份 三月份
--------------------------------------
01 10 null null
02 10 8 null
03 null 5 8
04 null null 9
------------------------------------------
1)
select a.部门名称dname,b.业绩yj as '一月份',c.业绩yj as '二月份',d.业绩yj as '三月份'
from table1 a,table2 b,table2 c,table2 d
where a.部门dep = b.部门dep and b.月份mon = '一月份' and
a.部门dep = c.部门dep and c.月份mon = '二月份' and
a.部门dep = d.部门dep and d.月份mon = '三月份' and
2)
select a.dep,
sum(case when b.mon=1 then b.yj else 0 end) as '一月份',
sum(case when b.mon=2 then b.yj else 0 end) as '二月份',
sum(case when b.mon=3 then b.yj else 0 end) as '三月份',
sum(case when b.mon=4 then b.yj else 0 end) as '四月份',
sum(case when b.mon=5 then b.yj else 0 end) as '五月份',
sum(case when b.mon=6 then b.yj else 0 end) as '六月份',
sum(case when b.mon=7 then b.yj else 0 end) as '七月份',
sum(case when b.mon=8 then b.yj else 0 end) as '八月份',
sum(case when b.mon=9 then b.yj else 0 end) as '九月份',
sum(case when b.mon=10 then b.yj else 0 end) as '十月份',
sum(case when b.mon=11 then b.yj else 0 end) as '十一月份',
sum(case when b.mon=12 then b.yj else 0 end) as '十二月份',
from table2 a left join table1 b on a.dep=b.dep
8.华为一道面试题
一个表中的Id有多个记录,把所有这个id的记录查出来,并显示共有多少条记录数。
------------------------------------------
select>
select * from(select count(ID) as count from table group by> -------------------------------------------------------------------华丽的分割线---------------------------------------------------------------------------
一、Transact-SQL问题:
1 有订单表SO_Table,单号字段RefNo VARCHAR(10),需要实现自动编号,格式为YYYYMMXXXX,其中XXXX为序号,如:2004050001,2004050002……2004059999等,采用Transact-SQL实现新订单编号的思路。
2 有表T1,T2,现有一事务,在向表T1添加数据时,同时也必须向T2也添加数据,如何确何数据的完整性。
3 如何求表中相邻(按聚集索引相邻)的两条记录的某字段的值之差,用Transact-SQL语句或存储过程。
4 如何删除表中的重复数据,用Transact-SQL写出代码。
5 基于MS-SQLSERVER 2000,如何统计数据库中所有用户表的数据,显示格式如下:
表名 记录数
sales 23
6 人员情况表(employee)中字段包括,员工号(ID),姓名(name),年龄(age),文化程度(wh):包括四种情况(本科以上,大专,高中,初中以下),现在我要根据年龄字段查询统计出:表中文化程度为本科以上,大专,高中,初中以下,各有多少人,占总人数多少。结果如下:
学历 年龄 人数 百分比
本科以上 20 34 14
大专 20 33 13
高中 20 33 13
初中以下 20 100 40
本科以上 21 50 20
。。。。。。
Transact-SQL查询语句如何写?
7表一(AAA)
商品名称mc 商品总量sl
A 100
B 120
表二(BBB)
商品名称mc 出库数量sl
A 10
A 20
B 10
B 20
B 30
用一条Transact-SQL语句算出商品A,B目前还剩多少?
二、数据库管理问题(DBMS为:MS-SQL Server 2000)(选作一道题)
1使用文件与文件组恢复的方式恢复数据库
2 设计作业进行周期性的备份数据库
3 一个B/S结构ERP系统,出入库单据超过100万条,系统在单据调出、保存过程中速度比较慢,原因可能有哪些?有哪些办法可以提高速度?
三、数据库设计
有一个钢铁产品检验数据库,包括产品的化学实验结果和物理试验结果,质检部门会根据高炉号来对这批产品进行综合判定,最后根据一个关键字段(比如说叫高炉号)将两个表中的内容取出来放到质量证明书中。钢铁产品有多种不同的规格,针对同一个规格的钢材需要的物理性能检验包括力学性能、高倍指标、低倍指标、气体含量四个大项,每个大项里边包含的内容也不一样,力学性能大约有20个小项,高倍有60个小项,低倍有20个小项、气体有8个小项,并且如果某一个大项中有不合格的,必须取双倍的试样重新进行检验,而另外的大项不重做复验。
请给出物理试验结果表的设计思路。
四、项目管理问题
请叙述你经历的你认为是最为成功的或典型的项目的项目运作(管理)体系、业务流程体系和软件技术体系统。
五、请叙述你的职业理想。
------------------------------------------------------------------------华丽的分割线---------------------------------------------------------------------------
第一套 一.选择题
1. 下面叙述正确的是______。
A、算法的执行效率与数据的存储结构无关
B、算法的空间复杂度是指算法程序中指令(或语句)的条数
C、算法的有穷性是指算法必须能在执行有限个步骤之后终止
D、以上三种描述都不对
2. 以下数据结构中不属于线性数据结构的是______。A、队列B、线性表C、二叉树D、栈
3. 在一棵二叉树上第5层的结点数最多是______。A、8 B、16 C、32 D、15
4. 下面描述中,符合结构化程序设计风格的是______。
A、使用顺序、选择和重复(循环)三种基本控制结构表示程序的控制逻辑
B、模块只有一个入口,可以有多个出口
C、注重提高程序的执行效率 D、不使用goto语句
5. 下面概念中,不属于面向对象方法的是______。
A、对象 B、继承 C、类 D、过程调用
6. 在结构化方法中,用数据流程图(DFD)作为描述工具的软件开发阶段是______。
A、可行性分析 B、需求分析 C、详细设计 D、程序编码
7. 在软件开发中,下面任务不属于设计阶段的是______。
A、数据结构设计 B、给出系统模块结构 C、定义模块算法 D、定义需求并建立系统模型
8. 数据库系统的核心是______。
A、数据模型 B、数据库管理系统 C、软件工具 D、数据库
9. 下列叙述中正确的是______。
A、数据库是一个独立的系统,不需要操作系统的支持
B、数据库设计是指设计数据库管理系统
C、数据库技术的根本目标是要解决数据共享的问题
D、数据库系统中,数据的物理结构必须与逻辑结构一致
10. 下列模式中,能够给出数据库物理存储结构与物理存取方法的是______。
A、内模式 B、外模式 C、概念模式 D、逻辑模式
11. Visual FoxPro数据库文件是______。
A、存放用户数据的文件 B、管理数据库对象的系统文件
C、存放用户数据和系统的文件 D、前三种说法都对
12. SQL语句中修改表结构的命令是______。
A、MODIFY TABLE B、MODIFY STRUCTURE C、ALTER TABLE D、ALTER STRUCTURE
13. 如果要创建一个数据组分组报表,第一个分组表达式是"部门",第二个分组表达式是"性别",第三个分组表达式是"基本工资",当前索引的索引表达式应当是______。
A、部门+性别+基本工资 B、部门+性别+STR(基本工资)
C、STR(基本工资)+性别+部门 D、性别+部门+STR(基本工资)
14. 把一个项目编译成一个应用程序时,下面的叙述正确的是______。
A、所有的项目文件将组合为一个单一的应用程序文件
B、所有项目的包含文件将组合为一个单一的应用程序文件
C、所有项目排除的文件将组合为一个单一的应用程序文件
D、由用户选定的项目文件将组合为一个单一的应用程序文件
15. 数据库DB、数据库系统DBS、数据库管理系统DBMS三者之间的关系是______。
A、DBS包括DB和DBMS B、DBMS包括DB和DBS
C、DB包括DBS和DBMS D、DBS就是DB,也就是DBMS
16. 在"选项"对话框的"文件位置"选项卡中可以设置______。
A、表单的默认大小 B、默认目录
C、日期和时间的显示格式 D、程序代码的颜色
17. 要控制两个表中数据的完整性和一致性可以设置"参照完整性",要求这两个表______。
A、是同一个数据库中的两个表 B、不同数据库中的两个表
C、两个自由表 D、一个是数据库表另一个是自由表
18. 定位第一条记录上的命令是______。
A、GO TOP B、GO BOTTOM C、GO 6 D、SKIP
19. 在关系模型中,实现"关系中不允许出现相同的元组"的约束是通过______。
A、候选键 B、主键 C、外键 D、超键
20. 设当前数据库有10条记录(记录未进行任何索引),在下列三种情况下,当前记录号为1时;EOF()为真时;BOF()为真时,命令?RECN()的结果分别是______。
A、1,11,1 B、1,10,1 C、1,11,0 D、1,10,0
21. 下列表达式中结果不是日期型的是______。
A、CTOD("2000/10/01") B、{^99/10/01}+365 C、VAL("2000/10/01") D、DATE()
22. 只有满足联接条件的记录才包含在查询结果中,这种联接为______。
A、左联接 B、右联接 C、内部联接 D、完全联接
23. 索引字段值不唯一,应该选择的索引类型为______。
A、主索引 B、普通索引 C、候选索引 D、唯一索引
24. 执行SELECT 0选择工作区的结果是______。
A、选择了0号工作区 B、选择了空闲的最小号工作区
C、关闭选择的工作区 D、选择已打开的工作区
25. 从数据库中删除表的命令是______。
A、DROP TABLE B、ALTER TABLE C、DELETE TABLE D、USE
26. DELETE FROM S WHERE 年龄>60语句的功能是______。
A、从S表中彻底删除年龄大于60岁的记录 B、S表中年龄大于60岁的记录被加上删除标记
C、删除S表 D、删除S表的年龄列
27. SELECT-SQL语句是______。
A、选择工作区语句 B、数据查询语句 C、选择标准语句 D、数据修改语句
28. SQL语言是______语言。A、层次数据库 B、网络数据库 C、关系数据库 D、非数据库
29. 在SQL中,删除视图用______。
A、DROP SCHEMA命令 B、CREATE TABLE命令 C、DROP VIEW命令 D、DROP INDEX命令
30. 以下属于非容器类控件的是______。A、Form B、Label C、page D、Container
31. 将查询结果放在数组中应使用______短语。
A、INTO CURSOR B、TO ARRAY C、INTO TABLE D、INTO ARRAY
32. 在命令窗口执行SQL命令时,若命令要占用多行,续行符是______。
A、冒号(:) B、分号(;) C、逗号(,) D、连字符(-)
33. 设有图书管理数据库:
图书(总编号C(6),分类号C(8),书名C(16),作者C(6),出版单位C(20),单价N(6,2))
读者(借书证号C(4),单位C(8),姓名C(6),性别C(2),职称C(6),地址C(20))
借阅(借书证号C(4),总编号C(6),借书日期D(8))
对于图书管理数据库,查询0001号借书证的读者姓名和所借图书的书名。
SQL语句正确的是______。
SELECT 姓名,书名 FROM 借阅,图书,读者 WHERE;
借阅.借书证号="0001" AND;
______
______
A、图书.总编号=借阅.总编号 AND;
读者.借书证号=借阅.借书证号
B、图书.分类号=借阅.分类号 AND;
读者.借书证号=借阅.借书证号
C、读者.总编号=借阅.总编号 AND;
读者.借书证号=借阅.借书证号
D、图书.总编号=借阅.总编号 AND;
34. 设有图书管理数据库:
图书(总编号C(6),分类号C(8),书名C(16),作者C(6),出版单位C(20),单价N(6,2))
读者(借书证号C(4),单位C(8),姓名C(6),性别C(2),职称C(6),地址C(20))
借阅(借书证号C(4),总编号C(6),借书日期D(8))
对于图书管理数据库,分别求出各个单位当前借阅图书的读者人次。下面的SQL语句正确的是______。
SELECT 单位,______ FROM 借阅,读者 WHERE;
借阅.借书证号=读者.借书证号 ______
A、COUNT(借阅.借书证号) GROUP BY 单位 B、SUM(借阅.借书证号) GROUP BY 单位
C、COUNT(借阅.借书证号) ORDER BY 单位 D、COUNT(借阅.借书证号) HAVING 单位
35. 设有图书管理数据库:
图书(总编号C(6),分类号C(8),书名C(16),作者C(6),出版单位C(20),单价N(6,2))
读者(借书证号C(4),单位C(8),姓名C(6),性别C(2),职称C(6),地址C(20))
借阅(借书证号C(4),总编号C(6),借书日期D(8))
对于图书管理数据库,检索借阅了《现代网络技术基础》一书的借书证号。下面SQL语句正确的是______。
SELECT 借书证号 FROM 借阅 WHERE 总编号=;
______
A、(SELECT 借书证号 FROM 图书 WHERE 书名="现代网络技术基础")
B、(SELECT 总编号 FROM 图书 WHERE 书名="现代网络技术基础")
C、(SELECT 借书证号 FROM 借阅 WHERE 书名="现代网络技术基础")
D、(SELECT 总编号 FROM 借阅 WHERE 书名="现代网络技术基础")
二、填空题
36. 算法的复杂度主要包括______复杂度和空间复杂度。
37. 数据的逻辑结构在计算机存储空间中的存放形式称为数据的______。
38. 若按功能划分,软件测试的方法通常分为白盒测试方法和______测试方法。
39. 如果一个工人可管理多个设施,而一个设施只被一个工人管理,则实体"工人"与实体"设备"之间存在______联系。
40. 关系数据库管理系统能实现的专门关系运算包括选择、连接和______。
41. 命令?LEN("THIS IS MY BOOK")的结果是______。
42.SQL SELECT语句为了将查询结果存放到临时表中应该使用______短语。
43. 多栏报表的栏目数可以通过______来设置。
44. 在打开项目管理器之后再打开"应用程序生成器",可以通过按ALT+F2键,快捷菜单和"工具"菜单中的______。
45. 数据库系统的核心是______。
46. 查询设计器中的"联接"选项卡,可以控制______选择。
47. 设有图书管理数据库:
图书(总编号C(6),分类号C(8),书名C(16),作者C(6),出版单位C(20),单价N(6,2))
读者(借书证号C(4),单位C(8),姓名C(6),性别C(2),职称C(6),地址C(20))
借阅(借书证号C(4),总编号C(6),借书日期D(8))
用SQL的CREATE命令建立借阅表(字段顺序要相同),请对下面的SQL语句填空:
______
48. 设有图书管理数据库:
图书(总编号C(6),分类号C(8),书名C(16),作者C(6),出版单位C(20),单价N(6,2))
读者(借书证号C(4),单位C(8),姓名C(6),性别C(2),职称C(6),地址C(20))
借阅(借书证号C(4),总编号C(6),借书日期D(8))
对图书管理数据库,查询由"清华大学出版社"或"电子工业出版社"出版,并且单价不超出20元的书名。请对下面的SQL语句填空:
SELECT 书名,出版单位,单价 FROM 图书;
WHERE_______ AND;
_______
49. 设有图书管理数据库:
图书(总编号C(6),分类号C(8),书名C(16),作者C(6),出版单位C(20),单价N(6,2))
读者(借书证号C(4),单位C(8),姓名C(6),性别C(2),职称C(6),地址C(20))
借阅(借书证号C(4),总编号C(6),借书日期D(8))
对图书管理数据库,求共借出多少种图书。请对下面的SQL语句填空:
SELECT _______ FROM 借阅
第一套题答案
选择题
1-5 CCBAD 6-10 BDBCA 11-15 DCBAA 16-20 BAABA 21-25 CCBBA 26-30 BBCCB 31-35 DDAAB
填空题
36.时间 37.模式或逻辑模式 38.黑盒 39. 一对多 或 1对多 或 一对n 或 1:N 或 1:n 或 1:n 或 1:N 或 一对m 或 1:M 或 1:m 或 1:m 或 1:N 40. 投影 41.15 42. Into cursor 或 Into cursor cursorname 43. 页面设置 或 列数 44. 应用程序生成器 45. 数据库管理系统 或 DBMS 46. 联接类型 或 联接条件 47. CREATE TABLE 借阅 (借书证号 C(4),总编号 C(6),借书日期 D(8)) 或 CREA TABL 借阅 (借书证号 C(4),总编号 C(6),借书日期D(8)) 或 CREATE TABLE 借阅 (借书证号 C(4),总编号 C(6),借书日期 D) 或 CREA TABL 借阅 (借书证号 C(4),总编号 C(6),借书日期 D) 48. 单价 |
|