数据库CH (6)

数据库CH  (6)
数据库CH  (6)

Formal Relational Query Languages

In this chapter we study three additional formal relational languages.Relational

Algebra,tuple relational calculus and domain relational calculus.

Of these three formal languages,we suggest placing an emphasis on rela-tional algebra,which is used extensively in the chapters on query processing and

optimization,as well as in several other chapters.The relational calculi generally

do not merit as much emphasis.

Our notation for the tuple relational calculus makes it easy to present the concept of a safe query.The concept of safety for the domain relational calcu-

lus,though identical to that for the tuple calculus,is much more cumbersome

notationally and requires careful presentation.This consideration may suggest

placing somewhat less emphasis on the domain calculus for classes not focusing

on database theory.

Exercises

6.10Write the following queries in relational algebra,using the university

schema.

a.Find the names of all students who have taken at least one Comp.Sci.

course.

b.Find the ID s and names of all students who have not taken any course

offering before Spring2009.

c.For each department,?nd the maximum salary of instructors in that

department.You may assume that every department has at least one

instructor.

d.Find the lowest,across all departments,of the per-department maxi-

mum salary computed by the preceding query.

Answer:

43

44Chapter6Formal Relational Query Languages

employee(person name,street,city)

works(person name company name,salary)

company name,city)

manages(person name,manager name)

Figure6.22Relational database for Exercises6.2,6.8,6.11,6.13,and6.15

a. name(student1takes1 course id(?dept name=′Comp.Sci.′(course)))

Note that if we join student,takes,and course,only students from

the Comp.Sci.department would be present in the result;students

from other departments would be eliminated even if they had taken a

Comp.Sci.course since the attribute dept name appears in both student

and course.

b. I D,name(student)? I D,name(?year<2009(student1takes)Note that

Spring is the?rst semester of the year,so we do not need to perform

a comparison on semester.

c.dept name G max(salary)(instructor)

d.G min(maxsal)(dept name G max(salary)as maxsal(instructor))

6.11Consider the relational database of Figure6.22,where the primary keys are

underlined.Give an expression in the relational algebra to express each of

the following queries:

a.Find the names of all employees who work for“First Bank Corpora-

tion”.

b.Find the names and cities of residence of all employees who work for

“First Bank Corporation”.

c.Find the names,street addresses,and cities of residence of all em-

ployees who work for“First Bank Corporation”and earn more than

$10,000.

d.Find the names of all employees in this database who live in the same

city as the company for which they work.

e.Assume the companies may be located in several cities.Find all com-

panies located in every city in which“Small Bank Corporation”is

located.

Answer:

(w orks))

a. person name(?

company name=“First Bank Corporation”

b. person name,city(employee1

(w orks)))

(?

company name=“First Bank Corporation”

Exercises 45

c. person name ,street ,city (?(company name =“First Bank Corporation”∧salar y >10000)

w orks 1employee )

d. person name (employee 1w orks 1company )

e.

Note:Small Bank Corporation will be included in each answer.

company name (company ÷( city (?company name =“Small Bank Corporation”(company ))))6.12Using the university example,write relational-algebra queries to ?nd the

course sections taught by more than one instructor in the following ways:a.

Using an aggregate function.b.Without using any aggregate functions.

Answer:

a.

?instrcnt >1(course id ,section id ,year ,semester G count (?)as instrcnt (teaches ))b.

course id ,section id ,year ,semester (?I D <>ID2(takes 1?takes1(ID2,course id ,section id ,year ,semester )(takes )))6.13Consider the relational database of Figure 6.22.Give a relational-algebra

expression for each of the following queries:

a.

Find the company with the most employees.b.

Find the company with the smallest payroll.c.Find those companies whose employees earn a higher salary,on av-erage,than the average salary at First Bank Corporation.

Answer:

a.t 1←company name G count-distinct (person name )(w orks )t 2←G max (num employees)(?company strength (company name ,num employees )(t 1))

company name (?t 3(company name ,num employees )(t 1)1?t 4(num employees )(t 2))

b.t 1←company name G sum (salary )(w orks )t 2←G min (payroll )(?company payroll (company name ,payroll )(t 1)) company name (?t 3(company name ,payroll )(t 1)1?t 4(payroll )(t 2))

c.

t 1←company name G avg (salary )(w orks )t 2←?company name =“First Bank Corporation”(t 1) t https://www.360docs.net/doc/903032465.html,pany name ((?t 3(company name ,a v g salar y )(t 1))

1t 3.a v g salar y >f irst bank .a v g salar y (?f irst bank (company name ,a v g salar y )(t 2)))6.14Consider the following relational schema for a library:

46Chapter6Formal Relational Query Languages

member(memb no,name,dob)

books(isbn,title,authors,publisher)

borrowed(memb no,isbn,date)

Write the following queries in relational algebra.

a.Find the names of members who have borrowed any book published

by“McGraw-Hill”.

b.Find the name of members who have borrowed all books published

by“McGraw-Hill”.

c.Find the name and membership number of members who have bor-

rowed more than?ve different books published by“McGraw-Hill”.

d.For each publisher,?nd the name and membership number of mem-

bers who have borrowed more than?ve books of that publisher.

e.Find the average number of books borrowed per member.Take into

account that if an member does not borrow any books,then that

member does not appear in the borrowed relation at all.

Answer:

a.t1← isbn(?publisher=“McGra w?Hill′′(books))

name((member1borro w ed)1t1))

b.t1← isbn(?publisher=“McGra w?Hill′′(books))

name,isbn(member1borro w ed)÷t1

c.t1←member1borro w ed1(?publisher=“McGra w?Hill′′(books))

name(?countisbn>5((memb no G count-distinct(isbn)as countisbn(t1))))

d.t1←member1borro w ed1books

publisher,name(?countisbn>5((publisher,memb no G count-distinct(isbn)as countisbn(t1)))

6.15Consider the employee database of Figure6.22.Give expressions in tuple

relational calculus and domain relational calculus for each of the following

queries:

a.Find the names of all employees who work for“First Bank Corpora-

tion”.

b.Find the names and cities of residence of all employees who work for

“First Bank Corporation”.

c.Find the names,street addresses,and cities of residence of all em-

ployees who work for“First Bank Corporation”and earn more than

$10,000.

Exercises47 d.Find all employees who live in the same city as that in which the

company for which they work is located.

e.Find all employees who live in the same city and on the same street

as their managers.

f.Find all employees in the database who do not work for“First Bank

Corporation”.

g.Find all employees who earn more than every employee of“Small

Bank Corporation”.

h.Assume that the companies may be located in several cities.Find all

companies located in every city in which“Small Bank Corporation”

is located.

Answer:

a.Find the names of all employees who work for First Bank Corporation:

i.{t|?s∈w orks(t[person name]=s[person name]

∧s[company name]=“First Bank Corporation”)} ii.{

|?c,s(∈w orks∧c=“First Bank Corporation”)} b.Find the names and cities of residence of all employees who work for

First Bank Corporation:

i.{t|?r∈employee?s∈w orks(t[person name]=r[person name]

∧t[city]=r[city]∧r[person name]=s[person name]

∧s[company name]=’First Bank Corporation’)} ii.{|?co,sa,st(∈w orks

∈employee∧co=“First Bank Corporation”)}

c.Find the names,street address,and cities of residence of all employees

who work for First Bank Corporation and earn more than$10,000per

annum:

i.{t|t∈employee∧(?s∈w orks(s[person name]=

t[person name]

∧s[company name]=“First Bank Corporation”∧s[salar y]> 10000))}

ii.{|∈employee∧?co,sa(∈w orks

∧co=’First Bank Corporation’∧sa>10000)}

d.Find the names of all employees in this database who live in the same

city as the company for which they work:

48Chapter6Formal Relational Query Languages

i.{t|?e∈employee?w∈w orks?c∈company

(t[person name]=e[person name]

∧e[person name]=w[person name]

∧w[company name]=c[company name]∧e[city]=

c[city])}

ii.{

|?st,c,co,sa(∈employee

∈w orks∧∈company)}

e.Find the names of all employees who live in the same city and on the

same street as do their managers:

i.{t|?l∈employee?m∈manages?r∈employee

(l[person name]=m[person name]∧m[manager name]=

r[person name]

∧l[street]=r[street]∧l[city]=r[city]∧t[person name]=

l[person name])}

ii.{|?s,c,m(∈employee∧

manages∧∈employee)}

f.Find the names of all employees in this database who do not work

for First Bank Corporation:

If one allows people to appear in the database(e.g.in employee)but not

appear in works,the problem is more complicated.We give solutions

for this more realistic case later.

i.{t|?w∈w orks(w[company name]=“First Bank Corporation”

∧t[person name]=w[person name])}

ii.{

|?c,s(∈w orks∧c=“First Bank Corporation”)}

If people may not work for any company:

i.{t|?e∈employee(t[person name]=e[person name]∧??w∈

w orks

(w[company name]=“First Bank Corporation”

∧w[person name]=t[person name]))}

ii.{

|?s,c(∈employee)∧??x,y

(y=“First Bank Corporation”∧∈w orks)}

g.Find the names of all employees who earn more than every employee

of Small Bank Corporation:

i.{t|?w∈w orks(t[person name]=w[person name]∧?s∈

w orks

(s[company name]=“Small Bank Corporation”?w[salar y]>

s[salar y]))}

Exercises49 ii.{

|?c,s(∈w orks∧?p2,c2,s2

(∈w orks∨c2=“Small Bank Corporation”∨s>s2))}

h.Assume the companies may be located in several cities.Find all com-

panies located in every city in which Small Bank Corporation is lo-

cated.

Note:Small Bank Corporation will be included in each answer.

i.{t|?s∈company(s[company name]=“Small Bank Corporation”?

?r∈company(t[company name]=r[company name]∧r[city]=s[city]))}

ii.{|?co2,ci2(∈company

∨co2=“Small Bank Corporation”∨∈company)} 6.16Let R=(A,B)and S=(A,C),and let r(R)and s(S)be relations.

Write relational-algebra expressions equivalent to the following domain-

relational-calculus expressions:

a.{|?b(∈r∧b=17)}

b.{|∈r∧∈s}

c.{|?b(∈r)∨?c(?d(∈s)?∈s)}

d.{|?c(∈s∧?b1,b2(∈r∧

∈r∧b1>b2))}

Answer:

a. A(?B=17(r))

b.r1s

c. A(r)∪(r÷?B( C(s)))

d. r.A((r1s)1c=r2.A∧r.B>r2.B(?r

2(r)))

It is interesting to note that(d)is an abstraction of the notorious

query“Find all employees who earn more than their manager.”Let

R=(emp,sal),S=(emp,mgr)to observe this.

6.17Repeat Exercise6.16,writing SQL queries instead of relational-algebra ex-

pressions.

Answer:

a.select a

from r

where b=17

50Chapter6Formal Relational Query Languages

b.select a,b,c

from r,s

where r.a=s.a

c.(select a

from r)

union

(select a

from s)

d.select a

from r as r1,r as r2,s

where r1.a=s.a and r2.a=s.c and r1.b>r2.b

6.18Let R=(A,B)and S=(A,C),and let r(R)and s(S)be relations.

Using the special constant null,write tuple-relational-calculus expressions

equivalent to each of the following:

a.r1s

b.r1s

c.r1s

Answer:

a.{t|?r∈R?s∈S(r[A]=s[A]∧t[A]=r[A]∧t[B]=r[B]∧t[C]=

s[C])∨

?s∈S(??r∈R(r[A]=s[A])∧t[A]=s[A]∧t[C]=s[C]∧t[B]=

null)}

b.{t|?r∈R?s∈S(r[A]=s[A]∧t[A]=r[A]∧t[B]=r[B]∧t[C]=

s[C])∨

?r∈R(??s∈S(r[A]=s[A])∧t[A]=r[A]∧t[B]=r[B]∧t[C]=

null)∨

?s∈S(??r∈R(r[A]=s[A])∧t[A]=s[A]∧t[C]=s[C]∧t[B]=

null)}

c.{t|?r∈R?s∈S(r[A]=s[A]∧t[A]=r[A]∧t[B]=r[B]∧t[C]=

s[C])∨

?r∈R(??s∈S(r[A]=s[A])∧t[A]=r[A]∧t[B]=r[B]∧t[C]=

null)}

6.19Give a tuple-relational-calculus expression to?nd the maximum value in

relation r(A).

Answer:{|∈r∧?∈R a>=b}

数据库系统概论复习题及答案

第一学期期末考试试卷和答案 试卷代码:03115 授课课时:96 课程名称:数据库系统原理A 适用对象:本科选课班 一、选择题(从下列各题四个答案中选出一个正确答案,每小题1分,共10分) 1、在数据库技术发展的几个阶段中,数据独立性最高的是__A___阶段。 A、数据库系统 B、文件系统 C、人工管理 D、数据项管理 2、在SQL的SELECT语句中,与选择运算对应的命令动词是__C___。 A、SELECT B、FROM C、WHERE D、ORDER BY 3、在数据库中,下列说法_A__是不正确的 A、数据库避免了一切数据的重复 B、若系统是完全可以控制的,则系统可确保更新是的一致性 C、数据可以共享 D、数据库减少了冗余 4、在数据库系统中,模式/外模式映像用于解决数据的_C__ A、结构独立性 B、物理独立性 C、逻辑独立性 D、分布独立性 5、关系代数的5种基本运算是__D_。 A、并、差、选择、投影、自然连接 B、并、差、交、选择、投影 C、并、差、交、选择、笛卡尔积 D、并、差、选择、投影、笛卡尔积 6、在SQL语句中,谓词“EXISTS”的含义是_B___。 A、全称量词 B、存在量词 C、自然连接--在连接条件中使用等于(=)运算符比较被连接列的列值,但它使用选择列表指出查询结果集合中所包括的列,并删除连接表中的重复列 D、等值连接--在连接条件中使用等于号(=)运算符比较被连接列的列值,其查询结果中列出被连接表中的所有列,包括其中的重复列 7、规范化过程主要为克服数据库逻辑结构中的插入异常、删除异常、更新异常以及_C__的缺陷 A、数据不一致性 B、结构不合理 C、冗余度大 D、数据丢失 8、数据库数据的正确性和相容性是数据库的__B____。 A、安全性 B、可维护性 C、完整性 D、并发控制 9、数据库三级模式体系结构主要的目标是确保数据库的_B__。 A、数据安全性 B、数据独立性

数据库系统概论课程教学大纲.

《数据库系统概论》课程教学大纲 课程英文名称:Theory & Application Of DataBase System 课程编号: 讲授对象:计算机网络工程专业(本科) 先修课程:《离散数学》、《FoxPro》、《数据结构》、《操作系统》 采用教材:《数据库系统概论》萨师煊等,高等教育出版社 总学时:72 授课:64 上机:8 学分:4 一、课程的性质、目标和任务: 《数据库系统原理及应用》是数据管理的最新技术,是计算机科学的重要分支,它为计算机专业、管理专业等众多学科提供利用计算机技术进行数据管理的基本理论知识,是计算机专业、管理专业等学科的专业必修课。 本课程主要介绍数据库的基本理论和应用方法。本课程的任务是通过各个教学环节,运用各种教学手段和方法,使学生在掌握数据模型、数据库管理系统、数据库语言及数据库设计理论等基本理论知识的基础上,逐步具有开发和设计数据库的能力,为进一步开发和设计大型信息系统打下坚实基础。 二、课程教学内容、教学形式和教学要求 1、理论教学大纲内容: 第一章绪论 (一)课程内容 1、数据库系统概述 2 、数据模型 3 、数据库系统结构 4 、数据库管理系统 5 、据库技术的研究领域 (二)学习目的和要求 本章阐述了数据库的基本概念,介绍了数据库管理技术的进展情况、数据库技术产生和发展的背景、数据库系统的组成以及数据库技术的主要研究领域。 学习本章的重点在于将注意力放在基本概念和基本知识的把握方面,从而为以后的学习打好扎实的基础。 第二章关系数据库 (一)课程内容 1 、关系模型 2 、关系数据结构 3 、关系的完整性 4、关系代数 (二)学习目的和要求 1、需要了解的:产系统数据库理论产生和发展的过程,关系数据库产品的发展 沿革;关系演算的概念; 2、需要牢固掌握的:关系模型的三个组成部分及各部分所包括的主要内容;牢 固关系数据结构及其形化定义;关系的三类完整性约束的概念。

数据库应急预案

数据库应急预案 一.数据库应急恢复流程图 数据库排错的重点是判断数据库节点的故障还是数据库故障,具体流程如下:

二.数据库应急恢复流程 1.使用本地计算机或者web应用服务器来ping数据库的四个节点,查看 四个节点的状态,确认操作系统没有问题的节点。 2.登录到操作系统没有问题的节点,使用crs_stat –t 命令判断那个实例 出现故障,至少一个实例的CRS的服务资源处于online状态。 3.在此节点上使用sqlplus / as sysdba;命令,登录到数据库,使用select status from v$instance;命令查看数据库状态, 1).如果数据库处于open状态,使用conn icp_user/dbc命令登录到数据库后,然后使用select sysdate from dual;命令来查询数据库的当前时间,如果能正确显示结构,则数据库没有问题,则只需恢复出现故障的实例就可以。 恢复的过程如下: a).数据库出现宕机的情况下 (1).重启数据库服务器 (2).以root用户登录的数据库服务器执行 #/etc/init.d/init.crs start (3). 执行crs_stat –t命令,查看对应节点的CRS服务资源都处于online 状态。

b).数据库服务器没有宕机的情况 (1).以root用户登录的数据库服务器执行 #/etc/init.d/init.crs disbale #/etc/init.d/init.crs stop #/etc/init.d/init.crs start (2). 执行crs_stat –t命令,查看对应节点的CRS服务资源都处于online 状态。 2). 如果数据库不处于open状态(mount或者nomount),则数据库出现问题,检查alert日志信息, a).如果出现以下提示: ORA-01151: use media recovery to recover block, restore backup if needed 则需要做介质恢复,需要做以下工作: (1).关闭数据库 SQL>shutdown immediate; (2)以nomount方式打开数据库 SQL>startup nomount; (3).使数据库处于mount状态

oracle数据库状态查询

1 状态查询 启动状态 SQL语句 结果 nomount select status from v$instance; STARTED select open_mode from v$database; ERROR at line 1: ORA-01507: database not mounted mount select status from v$instance; MOUNTED select open_mode from v$database; MOUNTED open select status from v$instance; OPEN select open_mode from v$database; READ WRITE 或者READ ONL Y 2 实验过程 SQL> startup nomount; ORACLE instance started. Total System Global Area 125829120 bytes Fixed Size 1247684 bytes Variable Size 92276284 bytes

Database Buffers 25165824 bytes Redo Buffers 7139328 bytes SQL> select status from v$instance; STA TUS ------------ STARTED SQL> select open_mode from v$database; select open_mode from v$database * ERROR at line 1: ORA-01507: database not mounted SQL> alter database mount; Database altered. SQL> select status from v$instance; STA TUS

实验十 文件

实验十文件 实验时间:年月日 【实验目的】 1、了解文件类型及文件指针。 2、学会文件基本操作,如打开、关闭、读、写等。 3、结合一定的算法,掌握比较复杂的文件操作方法。 【实验内容】 1、文件的基本操作; 2、fopen函数的使用及其各参数的含义,fclose函数的使用。 【实验步骤】 编程题: 文件复制与追加 1、根据程序提示从键盘输入一个已存在的文本文件的完整文件名,再输入一个新文本文件的完整文件名,然后将已存在的文本文件中的内容全部复制到新文本文件中,利用文本编辑软件,通过查看文件内容验证程序执行结果。 2、模拟DOS命令下的COPY命令,在DOS状态下输入命令行,以实现将一个已存在的文本文件中的内容全部复制到新文本文件中,利用文本编辑软件查看文件内容,验证程序执行结果。 3、根据提示从键盘输入一个已存在的文本文件的完整文件名,再输入另一个已存在的文本文件的完整文件名,然后将第一个文本文件的内容追加到第二个文本文件的原内容之后,利用文本编辑软件查看文件内容,验证程序执行结果。 4、根据提示从键盘输入一个已存在的文本文件的完整文件名,再输入另一个已存在的文本文件的完整文件名,然后将源文本文件的内容追加到目的文本文件的原内容之后,并在程序运行过程中显示源文件和目的文件中的文件内容,以此来验证程序执行结果。 三、分析与思考 如果要复制的文件内容不是用函数fputc()写入的字符,而是用函数fprintf()写入的格式化数据文件,那么如何正确读出该文件中的格式化数据呢?还能用本实验中的程序实现文件的拷贝吗?请读者自己编程验证。 解答: 1、#include #include #define MAXLEN 80 main() { FILE *fpSrc = NULL; FILE *fpDst = NULL; char ch; char srcFilename[MAXLEN]; /* 源文件名*/

数据库知识点总结

二、名词解释 1.数据冗余定义:同一数据存储在不同的数据文件中的现象。 2.DBA 数据库管理员 3.事务指访问并可能更新数据库中各种数据项的一个程序执行单元(unit)。 4.数据字典:数据库中所有对象及其关系的信息集合。 5.数据独立性包括数据的物理独立性和逻辑独立性。 6.物理独立性是指用户的应用程序与存储在磁盘上的数据库中数据是相互独立的 7.逻辑独立性是指用户的应用程序与数据库的逻辑结构是相互独立的 8. 存储过程是一组为了完成特定功能的SQL语句集 9.触发器可以查询其他表,而且可以包含复杂的SQL 语句。它们主要用于强制服从复杂的业务规则或要求 10.SQL语言中的视图 答:在SQL中,外模式一级数据结构的基本单位是视图,它是从若干基本表和(或)其它视图中构造出来的,视图并不存储对应的数据,只是将视图的定义存于数据字典中。 四、简答题 1.数据库管理系统的主要功能有哪些? 答:数据库定义、操纵、保护、存储、维护和数据字典。 2.数据库系统中的常见故障有哪些? 答:.事务故障,系统故障、介质故障。 3.简述SQL语言的组成。 答:分为四个部分: 数据定义、数据操纵、数据控制、嵌入式SQL语言的使用规定。 4.说明关系模型有哪三类完整性规则? 答:实体完整性、参照完整性、用户自定义完整性。 5.请阐述在网状模型和关系模型中,实体之间联系的实现方法。 答:在网状模型中,联系用指针实现。 在关系模型中,联系用关键码(或外键,或关系运算) 来实现。 6.DBS由哪几个部分组成? 答:DBS由四部分组成:数据库、硬件、软件、数据库管理员。 7.数据库的并发操作会带来哪些问题? 答:数据库的并发操作会带来三类问题:丢失更新问题;不一致分析问题和“脏数据”的读出。 8.简述客户/服务器模式DBS的一般结构。此时数据库应用的功能如何划分? 答:DBS :数据库系统(Database System),DBS是实现有组织地、动态地存储大量关联数据,方便多用户访问的计算机软件、硬件和数据资源组成的系统,即采用了数据库技术的计算机系统。 9.什么是日志文件?为什么要设立日志文件? 答:(1)日志文件是用来记录事务对数据库的更新操作的文件。 (2)设立日志文件的目的是:进行事务故障恢复;进行系统故障恢复;协助后备副本进行介质故障恢复。 10.SQL中表达完整性约束的规则主要有哪几种? 答:有主键约束、外键约束、属性值约束和全局约束等。 11.什么是分布式数据库的分布透明性?

数据库系统概论试题及答案整理版

数据库系统概论复习资料 第一章绪论 一、选择题 1.在数据管理技术的发展过程中,经历了人工管理阶段、文件系统阶段和数据库系统阶段。在这几个 阶段中,数据独立性最高的是 A 阶段。 A.数据库系B.文件系统C.人工管理D.数据项管理 2.数据库的概念模型独立于 A 。 A.具体的机器和DBMS B.E-R图C.信息世界D.现实世界 3.数据库的基本特点是 B 。 A.(1)数据结构化(2)数据独立性 (3)数据共享性高,冗余大,易移植 (4)统一管理和控制 B.(1)数据结构化(2)数据独立性 (3)数据共享性高,冗余小,易扩充 (4)统一管理和控制 C.(1)数据结构化(2)数据互换性 (3)数据共享性高,冗余小,易扩充 (4)统一管理和控制 D.(1)数据非结构化 (2)数据独立性 (3)数据共享性高,冗余小,易扩充 (4)统一管理和控制 4. B 是存储在计算机内有结构的数据的集合。 A.数据库系统B.数据库C.数据库管理系统D.数据结构 5.数据库中存储的是 C 。 A. 数据 B. 数据模型 C.数据及数据间的联系 D. 信息 6.数据库中,数据的物理独立性是指 C 。 A.数据库与数据库管理系统的相互独立 B.用户程序与DBMS的相互独立 C.用户的应用程序与存储在磁盘上数据库中的数据是相互独立的 D.应用程序与数据库中数据的逻辑结构相互独立 7.数据库的特点之一是数据的共享,严格地讲,这里的数据共享是指 D 。 A.同一个应用中的多个程序共享一个数据集合 B.多个用户、同一种语言共享数据 C.多个用户共享一个数据文件 D.多种应用、多种语言、多个用户相互覆盖地使用数据集合

数据库系统综合概论

第一章数据库系统概论 本章目的在于使读者对数据库系统的基本知识能有一个较为全面的了解,为今后的学习和工作打下基础。本章重点介绍了有关数据库结构和数据库系统组织的基本知识和基本概念,以及常见的三种类型的数据库系统的特点。重点介绍关系数据库的有关知识。 1.1 数据管理技术发展史 随着生产力的不断发展,社会的不断进步,人类对信息的依赖程度也在不断地增加。数据作为表达信息的一种量化符号,正在成为人们处理信息时重要的操作对象。所谓数据处理就是对数据的收集、整理、存储、分类、排序、检索、维护、加工、统计和传输等一系列工作全部过程的概述。数据处理的目的就是使我们能够从浩瀚的信息数据海洋中,提取出有用的数据信息,作为我们工作、生活等各方面的决策依据。数据管理则是指对数据的组织、编码、分类、存储、检索和维护,它是数据处理的一个重要内容中心。数据处理工作由来以久,早在1880 年美国进行人口普查统计时,就已采用穿孔卡片来存储人口普查数据,并采用机械设备来完成对这些普查数据所进行的处理工作。电子计算机的出现以及其后其硬件、软件的迅速发展,加之数据库理论和技术的发展,为数据管理进入一个革命性阶段提供有力的支持。根据数据和应用程序相互依赖关系、数据共享以及数据的操作方式,数据管理的发展可以分为三个具有代表性的阶段,即人工管理阶段、文件管理阶段和数据库管理阶段。 【1 】人工管理阶段 这一阶段发生于六十年代以前,由于当时计算机硬件和软件发展才刚刚起步,数据管理中全部工作,都必须要由应用程序员自己设计程序完成去完成。由于需要与计算机硬件以及

各外部存储设备和输入输出设备直接打交道,程序员们常常需要编制大量重复的数据管理基 本程序。数据的逻辑组织与它的物理组织基本上是相同的,因此当数据的逻辑组织、物理组织或存储设备发生变化时,进行数据管理工作的许多应用程序就必须要进行重新编制。这样就给数据管理的维护工作带来许多困难。并且由于一组数据常常只对应于一种应用程序,因此很难实现多个不同应用程序间的数据资源共享。存在着大量重复数据,信息资源浪费严重。【2 】文件管理阶段 这一阶段发生于六十年代,由于当时计算机硬件的发展,以及系统软件尤其是文件系统的出现和发展,人们开始利用文件系统来帮助完成数据管理工作,具体讲就是:数据以多种组织结构(如顺序文件组织、索引文件文件组织和直接存取文件组织等)的文件形式保存在外部存储设备上,用户通过文件系统而无需直接与外部设备打交道,以此来完成数据的修改、插入、删除、检索等管理操作;使用这种管理方式,不仅减轻进行数据管理的应用程序工作量,更重要地是,当数据的物理组织或存储设备发生变化时,数据的逻辑组织可以不受任何影响,从而保证了基于数据逻辑组织所编制的应用程序也可以不受硬件设备变化的影响。这样就使得程序和数据之间具有了一定的相互独立性。 但由于数据文件的逻辑结构完全是根据应用程序的具体要求而设计,它的管理与维护完全是由应用程序本身来完成,因此数据文件的逻辑结构与应用程序密切相关,当数据的逻辑结构需要修改时,应用程序也就不可避免地需要进行修改;同样当应用程序需要进行变动时,常常又会要求数据的逻辑结构进行相应的变动。在这种情况下,数据管理中的维护工作量也是较大的。更主要的是由于采用文件的形式来进行数据管理工作,常常需要将一个完整的、相互关联的数据集合,人为地分割成若干相互独立的文件,以便通过基于文件系统的编程来实现来对它们的管理操作。这样做同样会导致数据的过多冗余和增加数据维护工作的复杂性。例如人事部门、教务部门和医务部门对学生数据信息的管理,这三个部门中有许多数据是相同的,如姓名、年龄、性别等,由于是各部门均是根据自己的要求,建立各自的数据文件和应用程序,这样不仅造成了大量的相同数据重复存储,而且在修改时,常常需要同时修改三个文件中的数据项,如修改学生年龄,此外若需要增加一个描述学生的数据项,如通讯地址,那么所有的应用程序就必须都要进行相应的修改。除此之外,采用文件系统来帮助进行数据管理工作,在数据的安全和保密等方面,也难以采取有效的措施加以控制。 3 】数据库管理阶段 1在不断改进和完善文件系统的过程中,从六十年代后期开始,人们逐步研究和发展了以数据的统一管理和数据共享为主要特征的数据库系统。即在数据在统一控制之下,为尽可能多的应用和用户服务,数据库中的数据组织结构与数据库的应用程序相互间有较大的相对独立性等。与以往前数据管理方法和技术相比,利用数

数据库系统概论CH10(部分)习题解答

第十章数据库恢复技术 《概论》第十章、第十一章讨论DBMS中重要的事务处理技术。事务处理技术主要包括数据库恢复技术和并发控制技术。本章讨论数据库恢复的概念和常用技术。 一、基本知识点 ①需要了解的:什么是数据库的一致性状态。数据库运行中可能产生的故障类型,他们如何影响事务的正常执行,如何破坏数据库数据。数据转储的概念及分类。什么是数据库镜像功能。 ②需要牢固掌握的:事务的基本概念和事务的ACID性质。数据库恢复的实现技术。日志文件的内容及作用。登记日志文件所要遵循的原则。具有检查点的恢复技术。 ③需要举一反三的:恢复的基本原理,针对不同故障的恢复的策略和方法。 ④难点:日志文件的使用,系统故障恢复策略。 事务管理模块是DBMS实现中的关键技术。事务恢复的基本原理是数据备份,它貌似简单,实际实现却很复杂。数据库的事务管理策略(不仅有数据库恢复策略,还有并发控制策略)和DBMS缓冲区管理策略、事务一致性级别密切相关,读者要在学习完全书后再来重新考虑这些问题,提升对这些技术的理解和掌握。 读者要掌握数据库故障恢复的策略和方法。对于刚刚学习数据库课程的读者来讲可能并不体会数据库故障恢复的复杂性和重要性。到了实际工作中,作为数据库管理员,则必须十分清楚每一个使用中的DBMS产品提供的恢复技术、恢复方法,并且能够根据这些技术正确制定出实际系统的恢复策略,以保证数据库系统7×24小时正确运行,保证数据库系统在遇到故障时能及时恢复正常运行,提高抗灾难的能力。 二、习题解答和解析 1. 试述事务的概念及事务的4个特性。 答 事务是用户定义的一个数据库操作序列,这些操作要么全做要么全不做,是一个不可分割的工作单位。 事务具有4个特性:原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)和持续性(Durability)。这4个特性也简称为ACID特性。 原子性:事务是数据库的逻辑工作单位,事务中包括的诸操作要么都做,要么都不做。 一致性:事务执行的结果必须是使数据库从一个一致性状态变到另一个一致性状态。 隔离性:一个事务的执行不能被其他事务干扰。即一个事务内部的操作及使用的数据对其他并发事务是隔离的,并发执行的各个事务之间不能互相干扰。 持续性:持续性也称永久性(Permanence),指一个事务一旦提交,它对数据库中数据的改变就应该是永久性的。接下来的其他操作或故障不应该对其执行结果有任何影响。 2*.为什么事务非正常结束时会影响数据库数据的正确性,请列举一例说明之。

数据库常用命令

oracle常用命令 命令解释 $Ps –ef|grep oracle 查看oracle进程是否启动 $ sqlplus "/as sysdba" 以sysdba角色登陆oracle数据库 SQL>startup 显示当前系统中已登录的人员。 SQL>shutdown immediate 关闭数据库 SQL>select * from v$version; 查看oracle数据库版本 SQL>select name from v$database; 查看数据库SID SQL>truncate table table_name 快速清空一个表 SQL>select * from all_users;查看数据库中所有用户 SQL>alter tablespacename offline;将表空间offline SQL> alter tablespacename online ;将表空间online $oerr ora 2236 查错误 alert_{ORACLE_SID}.log 数据库告警日志文件 *.TRC 数据库跟踪文件 Oracle说明 1、数文件:SPFILE不能直接阅读是二进制文件,需要转为文本 2、oracle数据库后,可以查看数据库状态是否open,如果open会显示open字样 SQL> select status, instance_role from v$instance; 3、PFILE:SQL> connect / as sysdba 从spfile创建pfile:SQL> create pfile from spfile; 从pfile创建spfile:CREA TE SPFILE FROM PFILE='/home/oracle/admin/pfile/init.ora'; 4、names是客户端或应用程序需要连接数据库时必须配置的,使用$tnsping service_aliasname可以测试出tns配置的是否正确 5、要文件listener.ora、Tnsnames.ora、Sqlnet.ora,这三个位置在$ORACLE_HOME/network/admin目录下。 6、库启动时要先启动listener Network配置:监听程序lsnrctl

数据库系统概论Ch2(部分)习题解答

第二章关系数据库 本章系统地讲解了关系数据库的重要概念,并着重对关系模型进行了阐述。 关系模型包括关系数据结构、关系操作集合以及关系完整性约束三个组成部分。本章分别对这三个部分的内容进行了详细的分析与论述。 一、基本知识点 关系模型和关系数据库是《数据库系统概论》一书的重点,在全书中占有较大的篇幅(包括第二、三、四、五章)。因此,掌握本章的关键内容是学习后续各章的基础。 (1)需要了解的:关系数据库理论产生和发展的过程,关系数据库产品的发展及沿革;关系演算的概念;域关系演算语言不包括在本科教学大纲内。 (2)需要牢固掌握的:关系模型的三个组成部分及各部分所包括的主要内容;牢固关系数据结构及其形式化定义;关系的三类完整性约束的概念。 (3)需要举一反三的:关系代数(包括抽象的语言及具体的语言);关系代数中的各种运算(包括并、交、差、选择、投影、连接、除及广义笛卡儿积等)、元组关系演算语言ALPHA及域关系演算语言QBE等,能够使用这些语言完成各种数据操纵。 (4)难点:本章的难点在于关系代数。由于关系代数较为抽象,因此在学习的过程中一定要结合具体的实例进行学习。同时,要注意把握由具体语言到抽象语言的原则,即通过对具体语言如ALPHA和QBE的学习过渡到对抽象的关系演算的把握。 二、习题解答和解析 1、试述关系模型的三个组成部分。 答 关系模型由关系数据结构、关系操作集合和关系完整性约束三部分组成。 2、试述关系数据语言的特点和分类。 答 关系数据语言可以分为三类: 关系代数语言例如ISBL 元组关系演算语言例如APLHA,QUEL 关系数据语言关系演算语言 域关系演算语言例如QBE 具有关系代数和关系演算双重特点的语言例如SQL 这些关系数据语言的共同特点是:具有完备的表达能力;是非过程化的集合操作语言;功能强;能够嵌入高级语言中使用。 3、定义并理解下列术语,说明它们之间的联系与区别: (1)域,笛卡儿积,关系,元组,属性 答

数据库系统概论知识点

第一章:绪论 数据库(DB):长期存储在计算机内、有组织、可共享的大量数据的集合。数据库中的数据按照一定的数据模型组织、描述和存储,具有娇小的冗余度、交稿的数据独立性和易扩展性,并可为各种用户共享。 数据库管理系统(DBMS):位于用户和操作系统间的数据管理系统的一层数据管理软件。用途:科学地组织和存储数据,高效地获取和维护数据。包括数据定义功能,数据组织、存储和管理,数据操纵功能,数据库的事物管理和运行管理,数据库的建立和维护功能,其他功能。 数据库系统(DBS):在计算机系统中引入数据库后的系统,一般由数据库。数据库管理系统(及其开发工具)、应用系统、数据库管理员构成。目的:存储信息并支持用户检索和更新所需的信息。 数据库系统的特点:数据结构化;数据的共享性高,冗余度低,易扩充;数据独立性高;数据由DBMS统一管理和控制。 概念模型实体,客观存在并可相互区别的事物称为实体。 属性,实体所具有的某一特性称为属性。 码,唯一标识实体的属性集称为码。 域,是一组具有相同数据类型的值的集合。 实体型,具有相同属性的实体必然具有的共同的特征和性质。 实体集,同一类型实体的集合称为实体集。 联系 两个实体型之间的联系一对一联系;一对多联系;多对多联系 关系模型关系,元组,属性,码,域,分量,关系模型 关系数据模型的操纵与完整性约束关系数据模型的操作主要包括查询,插入,删除和更新数据。这些操作必须满足关系完整性约束条件。关系的完整性约束条件包括三大类:实体完整性,参照完整性和用户定义的完整性。 数据库系统三级模式结构外模式,模式,内模式 模式:(逻辑模式)数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。一个数据库只有一个模式。

ch6 文件管理

第6章文件管理习题 一、选择题 1、文件系统的主要目的是()。 A. 实现对文件的按名存取 B. 实现虚拟存储 C. 提高外存的读写速度 D. 用于存储系统文件 2、打开文件的具体含义是()。 A. 在指定的磁盘的地址上建立一个文件 B. 撤销指定文件的目录 C. 将指定的文件目录内容复制到主存的活动文件表 D. 修改指定文件的内容 3、文件的顺序存取是()。 A. 按终端号依次存取 B. 按文件的逻辑号逐一存取 C. 按物理块号依次存取 D. 按文件逻辑记录的大小逐一存取 4、设置当前目录的主要原因是()。 A. 节省主存空间 B. 加快文件查找速度 C. 节省辅存空间 D. 便于打开文件 5、建立多级目录()。 A. 便于文件的保护 B. 便于关闭文件 C. 解决文件的重名与共享 D. 提高系统的效率 6、存放在磁盘上的文件()。 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、位示图可用于()。 A. 文件目录的查找 B. 磁盘空间的管理 C. 主存空间的共享 D. 实现文件的保护和保密 12、在文件系统中,文件的不同物理结构有不同的优缺点。在下列文件的物理结构中,()不具有直接读写文件任意一个记录的能力。 A. 顺序结构 B. 链接结构 C. 索引结构 D. Hash结构 13、在下列文件的物理结构中,()结构不利于文件长度动态增长。 A. 顺序结构 B. 链接结构 C. 索引结构 D. Hash结构 14、常用的文件存取方法有两种:顺序存取和()存取。 A. 流式 B. 串联 C. 顺序 D. 随机 二、判断题 1、打开文件的功能就是将文件复制到主存。 2、同一文件在不同的存储介质上应该用相同的组织形式。 3、用户对文件的访问:将由用户访问表、目录访问权限及文件属性三者的权限所确定。 4、存放在磁盘上的文件既可随机访问,又可顺序访问。 5、文件系统是指文件、管理文件的软件及数据结构的总体。 6、文件系统用目录组织文件。 7、可顺序存取的文件不一定能随机存取,但凡是可以随机存取的文件都可以顺序存取。 三、名词解释

数据库状态为置疑.只读.脱机.紧急模式时的解决办法

SQl数据库状态为置疑,只读\脱机\紧急模式时的解决办法 SQl数据库状态为置疑,只读\脱机\紧急模式时的解决办法2010-05-08 18:44这是SQL2000常遇到的错误,楼主按照以下方法修复,修复完,检查一下数据库是否已完全修复,没完全修复时最低都可导出数据,要用数据库生成一个空库脚本,把修复数据库的数据用DTS导入到新库。。。 A.建立一个供恢复使用的数据库 我们使用默认方式建立一个供恢复使用的数据库(如iBusinessWork)。可以在SQL Server Enterprise Manager 里面建立。 B.停掉数据库服务器。 C.调整数据库与日志文件. 将刚才生成的数据库的日志文件iBusinessWork_log.ldf删除,用要恢复的数据库mdf文件覆盖刚才生成的数据库数据文件iBusinessWork_data.mdf。 D.启动数据库服务器。 此时会看到数据库iBusinessWork的状态为“置疑”。这时候不能对此数据库进行任何操作。 E.设置数据库允许直接操作系统表。 use master go sp_configure 'allow updates',1 go reconfigure with override go F.设置iBusinessWork为紧急修复模式 update sysdatabases set status=-32768 where dbid=DB_ID('iBusinessWork') 关闭打开企业管理器,此时可以在SQL Server Enterprise Manager里面看到该数据库处于“只读\置疑\脱机\紧急模式”可以看到数据库里面的表,但是仅仅有系统表 G.下面执行真正的恢复操作,重建数据库日志文件 dbcc rebuild_log('iBusinessWork','E:\Microsoft SQL Server\Data\iBusinessWork_log.ldf') 执行过程中,如果遇到下列提示信息: 服务器: 消息5030,级别16,状态1,行 1 未能排它地锁定数据库以执行该操作。 DBCC 执行完毕。如果DBCC 输出了错误信息,请与系统管理员联系。 说明您的其他程序正在使用该数据库,如果刚才您在F步骤中使用SQL Server Enterprise Manager打开了iBusinessWork库的系统表,那么退出SQL Server Enterprise Manager就可以了。(关闭企业管理器,如果别的机器从网络访问数据库,也把网络关闭) 正确执行完成的提示应该类似于:

数据库系统概论部分答案

第一章 1 .试述数据、数据库、数据库系统、数据库管理系统的概念。 答: ( l )数据(Data ) :描述事物的符号记录称为数据。数据的种类有数字、文字、图形、图像、声音、正文等。 ( 2 )数据库(DataBase ,简称DB ) :数据库是长期储存在计算机内的、有组织的、可共享的数据集合。 ( 3 )数据库系统(DataBas 。Sytem ,简称DBS ) :数据库系统是指在计算机系统中引入数据库后的系统构成, ( 4 )数据库管理系统(DataBase Management sytem ,简称DBMs ) :数据库管理系统是位于用户与操作系统之间的一层数据管理软件,用于科学地组织和存储数据、高效地获取和维护数据。 5 .试述数据库系统的特点。 答: ( l )数据结构化数据库系统实现整体数据的结构化,这是数据库的主要特征之一,也是数据库系统与文件系统的本质区别。 ( 2 )数据的共享性高,冗余度低,易扩充数据库的数据不再面向某个应用而是面向整个系统,因此可以被多个用户、多个应用以多种不同的语言共享使用。 ( 3 )数据独立性高数据独立性包括数据的物理独立性和数据的逻辑独立性。数据库管理系统的模式结构和二级映像功能保证了数据库中的数据具有很高的物理独立性和逻辑独立性。 ( 4 )数据由DBMS 统一管理和控制数据库的共享是并发的共享,即多个用户可以同时存取数据库中的数据甚至可以同时存取数据库中同一个数据。 7. 什么是概念模型?试述概念模型的作用。 答:概念模型是现实世界到机器世界的一个中间层次, 作用:用于信息世界的建模,是现实世界到信息世界的第一层抽象,数据库设计人员进行数据库设计的有力工具,也是数据库设计人员和用户之间进行交流的语言。 8.定义并解释概念模型中以下术语:实体,实体型,实体集,实体之间的联系 答: 实体:客观存在并可以相互区分的事物叫实体。 实体型:具有相同属性的实体具有相同的特征和性质,用实体名及其属性名集合来抽象和刻画同类实体,称为实体型。 实体集:同型实体的集合称为实体集。 实体之间的联系: 1 : 1 , 1 : n 和m : n 9 .试述数据模型的概念、数据模型的作用和数据模型的三个要素。 答: 数据模型是数据库中用来对现实世界进行抽象的工具,是数据库中用于提供信息表示和操作手段的形式构架。一般地讲,数据模型是严格定义的概念的集合。这些概念精确描述了系统的静态特性、动态特性和完整性约束条件。因此数据模型通常由数据结构、数据操作和完整性约束三部分组成。 (l )数据结构:是所研究的对象类型的集合,是对系统静态特性的描述。 ( 2 )数据操作:是指对数据库中各种对象(型)的实例(值)允许进行的操作的集合,包括操作及有关的操作规则,是对系统动态特性的描述。 ( 3 )数据的完整性约束条件:是一组完整性规则的集合。 13.试述关系模型的概念,定义并解释以下术语:关系,属性,域,元组,码,分量,关系模式

《数据库系统概论》课后习题及参考答案

课后作业习题 《数据库系统概论》课程部分习题及参考答案 第一章绪论(教材 41页) 1.试述数据、数据库、数据库系统、数据库管理系统的概念。 数据: 描述事物的符号记录称为数据。数据的种类有文字、图形、图象、声音、正文等等。数据与其语义是不可分的。 数据库: 数据库是长期储存在计算机内、有组织的、可共享的数据集合。数据库中的数据按一定的数据模型组织、描述和储存,具有较小的冗余度、较高的数据独立性和易扩展性,并可为各种用户共享。 数据库系统: 数据库系统( DBS)是指在计算机系统中引入数据库后的系统构成。数据库系统由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员构成。 数据库管理系统: 数据库管理系统 (DBMS)是位于用户与操作系统之间的一层数据管理软件。用于科学地组织和存储数据、高效地获取和维护数据。DBMS主要功能包括数据定义功能、数据操纵功能、数据库的运行管理功能、数据库的建立和维护功能。 2.使用数据库系统有什么好处? 使用数据库系统的好处是由数据库管理系统的特点或优点决定的。 使用数据库系统的好处很多,例如可以大大提高应用开发的效率,方便用户的使用,减轻数据库系统管理人员维护的负担等。 为什么有这些好处,可以结合第 5题来回答。

使用数据库系统可以大大提高应用开发的效率。因为在数据库系统中应用程序不必考虑数据的定义、存储和数据存取的具体路径,这些工作都由 DBMS来完成。 此外,当应用逻辑改变,数据的逻辑结构需要改变时,由于数据库系统提供了数据与程序之间的独立性。数据逻辑结构的改变是 DBA的责任,开发人员不必修改应用程序,或者只需要修改很少的应用程序。从而既简化了应用程序的编制,又大大减少了应用程序的维护和修改。 使用数据库系统可以减轻数据库系统管理人员维护系统的负担。因为 DBMS在数据库建立、运用和维护时对数据库进行统一的管理和控制,包括数据的完整性、安全性,多用户并发控制,故障恢复等等都由DBMS执行。 总之,使用数据库系统的优点是很多的,既便于数据的集中管理,控制数据冗余,可以提高数据的利用率和一致性,又有利于应用程序的开发和维护。 3.试述文件系统与数据库系统的区别和联系。 文件系统与数据库系统的区别: 文件系统面向某一应用程序,共享性差、冗余度大,独立性差,纪录内有结构、整体无结构,应用程序自己控制。 数据库系统面向现实世界,共享性高、冗余度小,具有高度的物理独立性和一定的逻辑独立性,整体结构化,用数据模型描述,由数据库管理系统提供数据安全性、完整性、并发控制和恢复能力。 文件系统与数据库系统的联系是: 文件系统与数据库系统都是计算机系统中管理数据的软件。 5.试述数据库系统的特点。 数据库系统的主要特点有: 一、数据结构化 数据库系统实现整体数据的结构化,这是数据库的主要特征之一,也是数据库系统与文件系统的本质区别。 二、数据的共享性高,冗余度低,易扩充

数据库系统概论复习资料全

数据库系统概论复习资料 第一章 一、名词解释 1.Data:数据,是数据库中存储的基本对象,是描述事物的符号记录。 2.Database:数据库,是长期储存在计算机内、有组织的、可共享的大量数据的集合。 3.DBMS:数据库管理系统,是位于用户与操作系统之间的一层数据管理软件,用于科学地 组织、存储和管理数据、高效地获取和维护数据。 4.DBS:数据库系统,指在计算机系统中引入数据库后的系统,一般由数据库、数据库管 理系统、应用系统、数据库管理员(DBA)构成。 5.数据模型:是用来抽象、表示和处理现实世界中的数据和信息的工具,是对现实世界的 模拟,是数据库系统的核心和基础;其组成元素有数据结构、数据操作和完整性约束。 6., 7.概念模型:也称信息模型,是按用户的观点来对数据和信息建模,主要用于数据库设计。 8.逻辑模型:是按计算机系统的观点对数据建模,用于DBMS实现。 9.物理模型:是对数据最底层的抽象,描述数据在系统内部的表示方式和存取方法,在磁 盘或磁带上的存储方式和存取方法,是面向计算机系统的。 10.实体和属性:客观存在并可相互区别的事物称为实体。实体所具有的某一特性称为属性。 11.E-R图:即实体-关系图,用于描述现实世界的事物及其相互关系,是数据库概念模型设 计的主要工具。 12.关系模式:从用户观点看,关系模式是由一组关系组成,每个关系的数据结构是一张规 范化的二维表。 13.型/值:型是对某一类数据的结构和属性的说明;值是型的一个具体赋值,是型的实例。 14.数据库模式:是对数据库中全体数据的逻辑结构(数据项的名字、类型、取值范围等) 和特征(数据之间的联系以及数据有关的安全性、完整性要求)的描述。 15.· 16.数据库的三级系统结构:外模式、模式和内模式。 17.数据库内模式:又称为存储模式,是对数据库物理结构和存储方式的描述,是数据在数 据库内部的表示方式。一个数据库只有一个内模式。 18.数据库外模式:又称为子模式或用户模式,它是数据库用户能够看见和使用的局部数据 的逻辑结构和特征的描述,是数据库用户的数据视图。通常是模式的子集。一个数据库可有多个外模式。 19.数据库的二级映像:外模式/模式映像、模式/内模式映像。 二、填空题 1.数据库系统由数据库、数据库管理系统、应用系统和数据库管理员构成。 2.数据管理是指对数据进行分类、组织、编码、存储、检索和维护等活动。 3.数据管理技术的发展经历了人工管理、文件系统、数据库系统3个阶段。 4.!

(题)数据结构复习题_ch10

Ch10索引与散列 一、选择题 1、单项选择题[在备选答案中只有一个是正确的, 将其选出并把它的标号写在题后的括号 内] (1)以下哪一个术语与数据的存储结构无关? () A、顺序表 B、链表 C、散列表 D、队列 (2)比较次数与排序码的初始排列状态无关的排序方法是() A、直接插入排序 B、起泡排序 C、快速排序 D、直接选择排序 (3)稳定的排序方法是() A、直接插入排序和快速排序 B、二分法插入排序和起泡排序 C、直接选择排序和直接插入排序 D、树形选择排序和Shell排序 (4)既希望较快的搜索又便于线性表动态变化的搜索方法是() A、顺序搜索 B、折半搜索 C、索引顺序搜索 D、散列法搜索 (5)对n个记录的线性表进行快速排序,为减少算法的递归深度,以下叙述哪一个是正确的? () A、每次分区后, 先处理较短的部分。 B、每次分区后, 先处理较长的部分。 C、要求待排序的记录已经排序, 而与算法每次分区后的处理顺序。 D、以上三者都不对。 2、单项选择题[备选答案中只有一个是正确的,将其选出并把它的标号写在题后括号内] (1)请指出在序列{ 2, 5, 7, 10, 14, 15, 18, 23, 35, 41, 52 } 中,用折半搜索法搜索关键码12时需做多少次关键码比较? () A、2 B、3 C、4 D、5 (2)对包含N个元素的散列表进行搜索,平均搜索长度:() A、为O(log2N) B、为O(N) C、不直接依赖于N D、上述三者都不是 (3)设存在一个字符序列{ Q, H, C, Y, P, A, M, S, R, D, F, X },问新序列{ F, H, C, D, P, A,

相关文档
最新文档