当前位置:文档之家› 第1章 Transact-SQL与数据管理系统概述

第1章 Transact-SQL与数据管理系统概述

第1章 Transact-SQL与数据管理系统概述
第1章 Transact-SQL与数据管理系统概述

第1章 Transact-SQL与数据

管理系统概述

欢迎进入Transact-SQL语言的编程世界Transact-SQL也就是T-SQL是Microsoft 公司设计开发的一种结构化查询语言Structure Query Language SQL它在关系数据库

管理系统Rational Database Management System RDBMS中实现数据的检索操纵和添加功能在购买这本书之前我希望用户已经了解SQL的基本常识知道SQL是做什么

用的但用户可能没有很好地理解关系数据库背后的概念和SQL的用途本书的第1章将介绍关系数据库在设计和体系结构上的一些基本原理并简单描述一下SQL语言如果用户以前从未接触过SQL和数据库技术本章将提供一些基础知识以确保用户能有效地阅读本书的其余内容如果用户对关系数据库的概念以及Microsoft的关系数据库实现和产品已经较为熟悉那么可以直接跳到第2章SQL Server基础或者第3章用于访问SQL Server的工具这两章介绍了SQL Server 2000的一些特性和工具以及SQL Server 2005所附带的新特性和工具

Wrox Press还出版了由Rob Viera所著的一些更深入地介绍SQL 2000与SQL 2005编程方面的书籍这些书籍都是从应用程序开发人员的角度写的它们分别是Professional SQL Server 2000 Programming Beginning SQL Server 2005 Programming和Professional SQL Server 2005 Programming在本书下面的章节中我将引述本章介绍的基本概念和上述书籍中的相关内容以进一步阐明Transact-SQL语言的用法和本质

1.1 Transact-SQL

ANSI American National Standards Institute美国国家标准协会制订了结构化查询语言SQL标准而T-SQL是Microsoft公司对此标准的一个实现SQL最初是由IBM 的研究员们开发的在SQL的正式版本推出之前SQL被称为SEQUEL它是S tructured

E nglish QUE ry L anguage结构化英语查询语言的缩写第一个正式版本推出后

SEQUEL被重新命名为SQL原名称中的English去掉了但发音保留了下来以便

识别当今数据库市场上许多不同的投机商提供了SQL的多种实现当用户逗留在这有时令人迷惑的数据库技术的领地上时可以肯定的是用户将面对这些不同的SQL变

2

SQL Server 2005 Transact-SQL编程入门经典

体这些不同版本的SQL的相似之处就是对ANSI标准的实现其中与任何其他的供

应商相比IBM是ANSI标准更坚定的支持者而且几乎到了僵化的程度然而由于不

同的SQL实现者自定义了不同的编程对象并对语言进行了扩展这就使不同的SQL在特定平台上具有唯一性Microsoft SQL Server 2000实现了ANSI-92标准也就是ANSI 在1992年制订的标准而Microsoft SQL Server 2005实现了ANSI-99要特别留意实现

这个词不论是2000版或者是2005版T-SQL并不完全服从ANSI标准不仅T-SQL如此Oracle的P/L SQL Sybase的SQLAnywhere和开源的MySQL也一样每个实现都在既定标准上有所偏离有各自不同的扩展和变化ANSI定义了三个遵从性级别入门级

Entry中级Intermediate和完整级Full T-SQL遵从ANSI的入门级标准理论上

说如果在使用SQL时严格遵从ANSI所定义的功能则在Microsoft SQL Server上写的代码也能在任何兼容ANSI的平台上工作当编写跨平台查询时需要加倍小心以保证

所写的代码在语法上完美地符合所有可能被影响到的平台实际上这个问题的背后有个很简单的现实需要编写可在多个平台上运行的查询的人毕竟只是少数所以ANSI标

准的作用只是提供指导方针以保证查询语言是用来操作数据的而不是通常意义上的程

序设计或许让关系数据库发展得慢一些就足以避免我们精神崩溃

1.1.1 T-SQL是编程语言还是查询语言

T-SQL并没有被设计成羽翼丰满的编程语言多年来随着ANSI标准的扩展SQL 加入了越来越多结构化编程语言的元素然而SQL仍旧缺乏真正的编程语言该具备的能力与灵活性我的朋友Antoine是一位很有才华的程序员他形容SQL是安眠药上的

Visual Basic我提及此事并不因为我赞成这个说法而是因为我觉得这很有趣我也认

为这代表了许多应用软件开发者对这种公共语言的看法

设计结构化查询语言的唯一目的就是实现数据的检索和操纵Microsoft 实现的T-SQL 是为Microsoft的关系数据库管理系统RDBMS SQL Server所特别设计的虽然

T-SQL和它的那些ANSI兄弟一样具备许多与程序设计语言类似的功能然而执行这些

功能的效率可能很优异也可能深不可测可以说为了避免被人称为SQL查询员而不是SQL程序员我还是很高兴称T-SQL为一种程序设计语言的当然T-SQL作为

编程语言还有诸多不足这仍旧是不可否认的事实而作为一种数据检索与集合操纵语言

SQL是很优秀的当T-SQL程序员想把T-SQL当成程序设计语言来用时会不可避免地与以往那些编写高效处理与执行的代码的经验发生冲突这是因为最适合T-SQL的是操作数据集而不是程序设计在编写T-SQL代码时这一点请牢记在心

T-SQL颇能完成像多重递归行操作或者复杂的算术运算这样的任务当然在记事本里编写一个.NET应用程序也能做到对于这个话题Antoine总是乐于回应道是的你

第1章 Transact-SQL与数据管理系统概述 3

可以这样做只要你愿意你也可以用你的手和膝盖围着五角大楼爬行他的这种思绪和我的父亲在我成长过程中的思绪一样我父亲曾经对我说过你会做并不意味着你必须

做这里想提到的是SQL程序员在代码中时常采取建立用户对象的方式来简化编程

因为这是最简单快捷的编写代码的方法但这种方法会降低运行效率加剧存储空间的消耗和CPU的占用我同意在某些时候快速解决方案是最好的方案但将来的性能问题永远必须被重视本书试图展示编写T-SQL代码最好的方法避免用户写出让自己的服务器不得不给用户跪下而请求怜悯的代码

1.1.2 SQL Server 2005中有哪些新特性

许多书籍以及数以百计的网站都在回答SQL Server 2005中有哪些新特性这样的问题所以我不准备耗费大量时间来描述这个新版本所有的变化对于和本书所描述内容有关的SQL Server 2005的新特性我会加以阐述作为介绍性章节在本章中我想花

一些时间来讨论.NET Framework与SQL Server的结合以及它对SQL程序员的影响这是SQL Server 2005最显著的改变之一

1T-SQL与.NET Framework

SQL Server与Microsoft .NET Framework的集成是数据库编程技术上的一次巨大飞跃同时尤其是对于那些熟悉系统结构的数据库管理员来说它也是给人带来误解并令人惶恐的重要根源

在所有的新特性中这个特性允许开发者不用SQL语句而是使用程序设计语言使用面向对象代码来编写用于访问操纵数据的存储过程与函数

2与T-SQL吻别

所有关于T-SQL即将寿终正寝的报道都是不成熟并且被过分夸大的具备使用托管代码创建数据库编程对象来替代SQL语句的能力并不意味着T-SQL有被灭绝的危险一位来自Microsoft公司合作伙伴的具有市场观念的主管说出了这么一句很酷的口号有了

SQL Server 2005与.NET可以与T-SQL吻别了但在摆明了很多事实后他很快就被团队里的其他成员劝服了当然这位主管的观点并非完全错误他偶得的这句口号如果这样改一下就精确了有了SQL Server 2005与.NET可以与SQL游标吻别了同样随

着SQL Server 2005的推出对于复杂的T-SQL聚合和目前正在使用的众多T-SQL解决方案也将会很快成为过时的技术

本书的第10章将详细介绍Transact-SQL游标从总体来说使用T-SQL游标是一件坏事现在我们只需知道应该避免使用游标就可以了游标和递归操作有关用于处理单个

数据或者整行数据与集合操作相比游标会耗费与其所实现的功能不成比例的大量存储

4

SQL Server 2005 Transact-SQL编程入门经典

空间与CPU资源

有了.NET Framework与SQL Server的结合代价高昂的游标操作可以由高效的

经过编译的程序集代替然而这仅仅是一小部分有关由SQL Server直接访问.NET

Framework的特性所带来的各种可能可以写一整本书复杂数据类型用户聚合强大的函数采用托管代码的触发器这些特性让数据库应用软件的功能与灵活性呈指数级增长与.NET Framework的集成所带来的主要优点之一就是T-SQL的开发者可以访问整个.NET对象模型与操作系统的应用程序编程接口API不需要通过用户扩展存储过程来实现由于扩展存储过程尤其是用户扩展存储过程几乎全是使用非托管代码来实现的

所以扩展存储过程成为了SQL Server中大多数安全性与可靠性问题的根源在SQL Server 2005中扩展存储过程将仅存在于服务器级别上而在数据库级别上它被托管程序集所替代于是所有的安全性与可伸缩性的问题便迎刃而解了

1.1.3 数据库管理系统DBMS

DBMS是一套用于存储与维护数据的程序DBMS的作用是管理数据维护数据的一致性和完整性数据库管理系统有很多类型和不同的实现

●层次结构数据库管理系统HDBMS

层次结构数据库已经存在了很多年它很可能是所有数据库类型中最古老的层次结构数据库曾用于管理以层次结构组织的数据目前在一些个案中它仍旧在发挥作用层次结构数据库有许多限制比如只能管理单个层次结构数据不能有效地防止出现错误的

重复的数据等现在HDBMS的实现越来越少了它被限制在专用的通常是非商业的

应用中

●网状结构数据库管理系统NDBMS

NDBMS在很大程度上已经被放弃了在过去大型机构的数据库系统是以网状或者层次结构实现的与层次结构模型不同网状结构数据库没有数据不一致性的问题但是

非常复杂固定的结构使得维护网状结构数据库及其宿主应用程序变得非常困难

●关系数据库管理系统RDBMS

RDBMS是在多个相关联的表中存储数据的系统软件它使用SQL作为创建管理

修改数据与数据结构的工具RDBMS将数据存储在表中一个表代表一个实体在另外一些表中保存了表与表之间的关系信息以此来维护数据最早提出关系数据库概念的是

一位来自IBM的科学家E.F. Codd他于1970年定义了关系模型关系数据库经过了优化

适合于记录事务以及相应的事务性数据Transactional Data大多数的商业软件使用

RDBMS存储数据由于SQL是专门为RDBMS设计的所以我将在本章的后续内容中多花一些时间讲解RDBMS的基本结构

●面向对象的数据库管理系统ODBMS

第1章 Transact-SQL与数据管理系统概述 5 ODBMS是几年前才出现的系统它将数据作为对象存储在数据库中ODBMS支

持面向对象理论的方方面面包括类与对象类的继承等当前准确定义ODBMS是

什么与不是什么的国际标准并不存在由于ODBMS平台上的应用软件保存的是对象而不是关系与实体这就使系统在处理复杂的数据对象采用像Microsoft的.NET这样的新语言或者C译者注应为C++与Java这样的面向对象编程OOP语言编程时效率非常高ODBMS解决方案一推出便倍受吹捧被认为是数据库系统的终极产品并有预

言认为所有其他类型的数据库系统都将成为历史然而它一直没能如预测所愿被广泛接受在数据库市场上它虽占有一席之地但基本上仅限于计算机辅助设计CAD与电信行业

●对象-关系数据库管理系统ORDBMS

ORDBMS是从RDBMS发展而来的关系数据库系统的开发者意识到存储对象的能力变得越来越重要于是他们在关系模型中加入了能够存储类与对象的机制ORDBMS的实现基本上占领了原本属于ODBMS的目标市场个中有太多原因我不想在此详细阐述

而将具备了XML数据类型结合了.NET Framework的Microsoft SQL Server 2005贴上了ORDBMS的标牌则有些争议

1.2 作为关系数据库管理系统的SQL Server

本节介绍关系数据库背后的概念以及Microsoft认为它们是如何实现的本节的内容需要围绕数据对象的创建展开在第11章中将更加详细地介绍这方面的内容为了方便讨论在本节中我将避免描述具体机制的实现过程而把注意力集中在最终的结果上如前所述关系数据库将所有的数据都保存在表里在理想情况下每一个表都代表单一的实体或者对象用户显然不会将风马牛不相及的两种数据比如说狗和汽车保

存在同一张表中这并不是说不能这样做而是说如果这样做的话效率和易维护性就大打折扣了

1.2.1 表

表可拆分成行与列每一行必须能够独立存在与表中的其他行之间没有依赖关系

行所代表的是一个表所代表的实体的单一完整的实例行中的每一列包含特定的属性

它们有助于定义实例这听起来可能有点复杂但实际上很简单为了便于说明我们以现实世界中的实体雇员为例为了保存和雇员有关的数据需要创建一个表其中具有记录关于雇员数据所需的各种属性为了简单起见将这个表命名为Employee

6

SQL Server 2005 Transact-SQL编程入门经典

有关命名对象的更多信息请参阅第4章的命名约定一节

在创建雇员表时还需要决定你想存储雇员的哪些属性出于本例的目的决定存储雇员的姓氏名字社会保险号码Social Security Number SSN部门电话分机号与雇佣日期所得到的表如图1-1所示

图 1-1

表中的数据请见图1-2

图 1-2

1主键

为了有效地管理表中的数据表中每一行必须能被唯一识别如果不定义一个能将不同行区别开来的属性想检索更新或者删除一行数据就相当困难了在很多情况下这

个标识符不是实体中具有描述性的属性比如社会保险号码属性是能唯一区别雇员的逻辑选择然而也有很多理由让用户可以不使用社会保险号码来区别每个雇员与其使用社会保险号码不如为每一行分配一个非描述性的键在表中用于唯一标识每一行的键值

就叫主键

不选择社会保险号码作为主键的原因可概括为两个方面安全性与高效性

从安全性来说需要避免在多个表中保证雇员的社会保险号码的安全由于用于在

多个表之间建立关系的列很可能是键所以使用一个非描述性的键作为替代就显得很

有意义如此就避免了在不同表间建立关系时需要将隐私或者敏感数据复制在不同位

置上

从高效性来说应经常使用具有更高效率或者更小的数据类型代替非数值键比如

社会保险号码既可以设计为字符型数据也可以设计为整型数据如果雇员的数量少于

32 767就可以使用双字节整型而不用4字节整型甚至是10个字节的字符型不仅如此整数运算还比字符运算速度快

还需要确保表中每个社会保险号都是唯一的并且是非空的有其他机制保证了这个要求不需要非将社会保险号作为主键不可

第1章 Transact-SQL与数据管理系统概述7

键与强制唯一性在第11章中详细介绍

非描述性键只用来唯一标识表中的每一行或者说实体的每个实例它没有具体意义这就简化了表与表之间的连接为关系的建立提供了基础对于本例只需简单地改变一下表结构增加一个EmployeeKey列就能够唯一标识表中的每一行见图1-3有了EmployeeKey列就有了一个有效的容易管理的主键

每个表只能有一个主键这就意味着这个主键所在的列是唯一识别一行的主要手

段但它不一定是识别某一行的唯一方法它只是完成此功能的主机制主键不能

为NULL主键必须是唯一的我坚信主键永远应该是由单个列组成的虽然这不是必

须的主键也可以是由多个列组合而成如果有这样一个表它的两个列组合在一起能

唯一标识一个行而任何单个列均不能则可以将这两个列组合在一起作为单一主键

如图1-4

在上述例子中表LibraryBook用来维护图书馆中的书籍记录由于相同的书可能有

多个副本所以就不能用ISBN列来唯一标识一本书为了标识每本书表的设计者将ISBN 列和副本号CopyNumber列组合在了一起我个人通常会避免使用多列键而是创建一个能唯一标识一行的新列这样在编写JOIN查询详见第5章时就会十分简单结果代码会很清晰查询操作本身总体上说也比较有效率以图书馆书籍为例给每本书赋予一个编号这样的机制会更有效图1-5展示了这样设计的表

图1-3 图1-4 图 1-5

表是一个由多个行与列组成的集合表代表实体每一行代表实体的一个实例行中的每一列包含最多一个能代表实体属性的值以雇员表为例按照设计规范每一行代表雇员实体的单个实例每个雇员可以并且只能拥有一个名字一个姓氏一个SSN号一个分机号与一个雇佣日期除了决定哪些属性是需要维护的之外属性如何存储也是必须要考虑的在定义表的列时至少需要定义下列三项

●列的名称

●列的数据类型

●列是否允许为空NULL

2列名

8

SQL Server 2005 Transact-SQL编程入门经典

列的命名要简单且直观更多信息请参阅第11章

3数据类型

选择数据类型的总体规则是尽量使用最小的数据类型数据类型越大占用内存

与磁盘空间也就越大还需要牢记在心的是SQL Server处理整型数据时要比处理字

符数据效率高得多所以只要有可能就应该使用数字曾经有人说过数字只能用在需

要执行数学运算的列上但这种观点是站不住脚的不仅仅是数学计算在进行排序与

比较时我们也应优先选择数字而不是字符不过如果数字串必须以0开始的话

那么这条规则就不适用了社会保险号码就是这样一个例子假如要是没有如下这个令人遗憾的事实社会保险号就如我女儿的号码是以0开始的那么社会保险号是用

整型数据来代替字符串数据的一个完美的选择这是因为如果试图将整数012345678保存下来所得到的数将是12345678从数学上说这虽然是两个相同的数但从政府角度

说他们并不这样认为社会保险号是由数字组成的字符串它们需要以字符型保存不

能以数字形式保存

在设计表的列以及为每个列选择数据类型时宜保守一些并使用尽可能小的尽可能高效的数据类型与此同时也应仔细考虑一些可能并不常见的例外情况要确认所选择的类型都能满足以上这些要求

SQL Server 2000和SQL Server 2005中的列可用的数据类型列在表1-1中

表1-1

数据类型存储描述

Bigint 8字节8字节的带符号整数数值范围从–9 223 372 036 854 775 808到

+9 223 372 036 854 775 870

Int 4字节4字节的带符号整数数值范围从–2 147 483 648到+2 147 483 647 SmallInt 2字节双字节带符号整数数值范围从–32 768到+32 767

TinyInt 1字节单字节无符号整数数值范围从0到255

Bit 1比特表示1或者0的整型数

Decimal 5~17字节预定义的定点的带符号的小数范围从

–10000000000000000000000000000000000001–1038+1到

99999999999999999999999999999999999999+1038-1

decimal类型在定义时要声明精度和比例值以便定义在小数点的

左边和右边各有多少位数在定义时使用这样的语法表达

decimal[(precision,[scale])]precision定义了小数点左边和右边一共

有多少个数字scale定义了小数点右边有多少个数字比如如

果要支持小数3.141592653589793的存储指定decimal类型时就

要写成decimal(16,15)如果数据类型被指定为decimal(3,2)则

系统只保存3.14scale的默认值是0它的范围必须在0precision

第1章 Transact-SQL 与数据管理系统概述

9 之间precision 的默认值是18最大允许为38 续表

数据类型

存储 描述 Numeric

5~17字节 numeric 和decimal 类型相同请直接使用decimal 类型numeric 这个词的自我描述性要弱得多因为很多人认为整数是numeric

Money 8字节 money 数据类型用于保存范围从–922 337 203 685 477.5808到 +922 337 203 685 477之间的货币单位同decimal

数据类型相比

money 类型的优点在于开发者可以在特定场所使用自动的货币格式请注意money 数据类型支持小数点后4位数会计们会喜欢的不一会儿功夫几百万个万分只一便士就合计好了

SmallMoney 4字节 Bill Gates 需要像money 这样的数据类型来跟踪他的业务但对我

们当中的大多数人而言使用smallmoney 类型就足够应付了

smallmoney 类型占用4个字节可以用于保存从–214 748.3648到

214 748.3647之间的货币单位 Float

4或者8字节 float

是一种近似的值SQL Server

执行四舍五入它支持从–1.79x10308到1.79x10308之间的实型数据 Real

4字节 real 与float 同义 DateTime 8字节 datetime 用来保存从1753年1月1日到9999年12月31日

注意会造成万年虫灾难间的日期和时间datatime 数据类型的精度为

3.33毫秒

SmallDatetime

4字节 smalldatetime 类型保存从1900年1月1日到2079年6月6日之间的日期和时间精度为1分钟 Char 每个字符1字节最多8000个字符 char 类型是固定长度的数据类型用于保存字符数据可保存的字符数量为1

8000个在一个char 数据类型中可能的字符组合有256种字符所代表的意义和特定的语言也就是字符集的排列规则collation 有关

举个例子来说英语实际上是使用拉丁字符排列规则定义的拉丁字符排列规则支撑着英语字符集等许多欧洲

西部字符集

VarChar 每个字符1字节最多8000个字符 除了长度可变以外VarChar 数据类型和char 类型是相同的假如定义一个类型为char(8)的列则这个列将占用8个字节即使只使用了其中3个字节一个Varchar 类型的列只占用它所需要的空间通常来讲Char 数据类型更适合于数据处理而VarChar 类型则适合于数据存储凭经验而言如果数据都接近于所定义的长度就

使用Char 类型如果数据长度差别很大就使用VarChar 类型比如可以使用VarChar(167)来保存世界上最长的城市名称Krung

thep mahanakhon bovorn ratanakosin mahintharayutthaya mahadilok

pop noparatratchathani burirom udomratchanivetmahasathan amornpiman avatarnsathit sakkathattiyavisnukarmprasit

泰国曼谷的诗歌名使

SQL Server 2005 Transact-SQL 编程入门经典

10用Char 类型来保存长度一样的数据比如

使用Char(12)就可保存美国国内的电话号码(12)456-7890 续表

数据类型

存储 描述 Text 每个字符1字节

最多 2 147 483 648个字符 2 GB Text 数据类型与VarChar 类型相似这是因为Text 数据类型也是一种长度可变的字符类型这两种类型最大的区别在于可保存的数据长度不同Text 类型可以存储高达2亿个字符

包括空格数据保存的物理位置不同varchar 类型的数据与行中其他列上的数据在物理上是被保存在一起的而对于text 数据类型类型为text

的列的数据与行的其他部分是分开保存的

行上只保存了一个指针SQL Server 通过这个指针找到数据 nChar 每个字符2字节最多4000

个字符8000字节 nChar 数据类型是一种固定长度的数据类型除了所支持的字符数量不同以外它和Char 类型是相同的Char 型字符串是由单个字节的字符组成所以只支持256个不同的字符nChar 是双字节数据类型可以支持65 536种不同的字符支持更多字符所付出的代价就是每个字符要多使用一个字节保存于是nChar 类型的最大长度为4000个字符也就是8000字节

nVarChar 每个字符2字节最多4000

个字符8000字节 除了所支持的字符个数不同以外nVarChar 类型是和VarChar 类型相同的一种可变长度的数据类型VarChar 型字符串是由单个字节的字符组成所以只支持256个不同的字符nVarChar 是双字节数据类型可以支持65 536种不同的字符支持更多字符所付出的代价就是每个字符要多使用一个字节保存于是nVarChar 类型的最大长度为4000个字符也就是8000字节

nText 每个字符2字节

最多 1 073 741 823个字符 除了所支持的字符数量不同以外nText 类型是和Text 类型相同的数据类型Text 型数据是由单个字节的字符组成所以只支持256个不同的字符nText 是双字节数据类型可以支持65 536种不同的字符支持更多字符所付出的代价就是每个字符要多使用一个字节保存于是nText 类型的最大长度为1 073 741 823个字符也就是2 GB 字节

Binary

1~8000字节 固定长度的二进制数据数据长度在创建时就已确定可以是18000字节 VarBinary

1~8000字节 可变长度的二进制数据类型除了只占用存储数据必须的存储空间外VarBinary 类型和Binary 类型相同 Image 最大可达 2 147 483 647

字节 Image 数据类型和VarBinary 类型相似原因是它也是一种可变长度的二进制数据类型这两种类型最大的区别在于可保存的数据长度不同Image 类型可以存储高达2 GB 的数据数据保存的物理位置不同VarBinary 类型的数据与行中其他列上的数据在物理上是被保存在一起的而对于Image 数据类型类型为Image 的列

的数据与行的其他部分是分开保存的

行上只保存了一个指针

第1章 Transact-SQL与数据管理系统概述11

SQL Server通过这个指针找到数据Image类型通常用于保存图像

二进制文件和二进制对象

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

数据库系统概论复习资料: 第一章: 一、选择题: 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.多种应用、多种语言、多个用户相互覆盖地使用数据集合 8.数据库系统的核心是 B 。 A.数据库 B.数据库管理系统 C.数据模型 D.软件工具 9. 下述关于数据库系统的正确叙述是 A 。 A.数据库系统减少了数据冗余 B.数据库系统避免了一切冗余 C.数据库系统中数据的一致性是指数据类型一致 D.数据库系统比文件系统能管理更多的数据 10. 数将数据库的结构划分成多个层次,是为了提高数据库的①和②。 ①A.数据独立性 B.逻辑独立性 C.管理规范性 D.数据的共享 ②A.数据独立性 B.物理独立性 C.逻辑独立性 D.管理规范性 【答案:】①B ②B 11. 数据库(DB)、数据库系统(DBS)和数据库管理系统(DBMS)三者之间的关系是 A 。 A.DBS包括DB和DBMS B.DDMS包括DB和DBS C.DB包括DBS和DBMS D.DBS就是DB,也就是DBMS

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

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

B.用户程序与DBMS的相互独立 C.用户的应用程序与存储在磁盘上数据库中的数据是相互独立的 D.应用程序与数据库中数据的逻辑结构相互独立 7.数据库的特点之一是数据的共享,严格地讲,这里的数据共享是指 A.同一个应用中的多个程序共享一个数据集合 B.多个用户、同一种语言共享数据 D 。 C.多个用户共享一个数据文件 D.多种应用、多种语言、多个用户相互覆盖地使用数据集合 8.数据库系统的核心是 A.数据库B 。 B.数据库管理系统C.数据模型D.软件工具 9.下述关于数据库系统的正确叙述是 A.数据库系统减少了数据冗余 B.数据库系统避免了一切冗余 A 。 C.数据库系统中数据的一致性是指数据类型一致 D.数据库系统比文件系统能管理更多的数据 10.数将数据库的结构划分成多个层次,是为了提高数据库的B①和B②。 ①A.数据独立性 ②A.数据独立性B.逻辑独立性 B.物理独立性 C.管理规范性 C.逻辑独立性 D.数据的共享 D.管理规范性 11.数据库(DB)、数据库系统(DBS)和数据库管理系统(DBMS)三者之间的关系是A。 A.DBS包括DB和DBMS B.DDMS包括DB和 DBS

数据库系统概论知识点

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

数据库系统综合概论

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

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

第1章 数据库系统概述习题及答案[精品文档]

习题一 第1章数据库系统概述 一、填空题 1.在关系数据库中,一个元组对应表中。 解:一个记录(一行) 2. 常用的数据模型有:、、和面向对象模型。 解: 关系模型,层次模型,网状模型 3. 用二维表来表示实体及实体之间联系的数据模型是。 解: 关系模型 4. 关系模型数据库中最常用的三种关系运算是、、。 解: 选择运算,投影运算,连接运算 5.在数据库系统中,数据的最小访问单位是。 解: 字段(数据项) 6.对表进行水平方向的分割用的运算是。 解: 选择运算 7. 数据结构、和称为数据模型的三要素。解: 数据操作,数据约束条件

8. 关系的完整性约束条件包括完整性、完整性和完整性三种。 解: 用户定义,实体,参照 二、单项选择题 1. 对数据库进行规划、设计、协调、维护和管理的人员,通常被称为( D )。 A. 工程师 B. 用户 C. 程序员 D. 数据库管理员 2. 下面关于数据(Data)、数据库(DB)、数据库管理系统(DBMS)与数据库系统(DBS)之间关系的描述正确的是( B )。 A. DB包含DBMS和DBS B. DBMS包含DB和DBS C. DBS包含DB和DBMS D. 以上都不对 3. 数据库系统的特点包括( D )。 A. 实现数据共享,减少数据冗余 B. 具有较高的数据独立性、具有统一的数据控制功能 C. 采用特定的数据模型 D. 以上特点都包括 4. 下列各项中,对数据库特征的描述不准确的是( D )。 A. 数据具有独立性 B. 数据结构化 C. 数据集中控制 D. 没有冗余 5. 在数据的组织模型中,用树形结构来表示实体之间联系的模型称为( D )。 A. 关系模型 B. 层次模型 C. 网状模型 D. 数据模型 6. 在数据库中,数据模型描述的是( C ) 的集合。 A. 文件 B. 数据 C. 记录 D. 记录及其联系

数据库原理 第一章 数据库系统概述期末习题与答案

1、下列说法中错误的是()。 A.数据是信息的符号表示,因此,同一信息只能用一种数据形式来表示 B.信息是数据的内涵,是对数据的语义解释 C.只有当给数据赋予特定语义后,数据才可转换为可传递的信息 D.数据管理是数据处理中的核心环节,其优劣直接影响数据处理的效果 正确答案:A 2、下列说法正确的是()。 A.数据库管理系统的完整性控制功能是保证数据库的完整性,防止数据丢失 B.数据库避免了一切数据的冗余 C.数据库系统的核心是数据库管理员 D.数据库是多个结构化的数据集合 正确答案:D 3、以下不属于DBA职责的是()。 A.为终端用户开发和设计应用程序 B.定义和实施数据库的备份和恢复策略 C.参与数据库设计的全过程,决定整个数据库的结构和内容 D.定义数据的安全性和完整性规则,负责分配各个应用程序对数据库的存取权限 正确答案:A 4、以下说法中正确的是()。 A.DBMS能实现数据库的安全性控制、完整性控制、并发控制及数据库恢复等运行管理功能 B.DBMS是处于计算机硬件和操作系统之间的可直接对数据库进行操作的一个软件系统 C.DBMS包含DB和DBS D.DBMS提供数据控制语言(DCL),能实现对数据库中数据的查询、插入、修改和删除等操作

正确答案:A 5、保护数据库,防止未授权的或不合法的使用造成的数据泄漏、更改破坏,这是指数据库的()。 A.数据库恢复 B.安全性 C.并发控制 D.完整性 正确答案:B 6、下列说法中正确的是()。 A.在三级模式间引入二级映像的主要作用是提高数据与程序的安全性 B.在数据库系统的三级模式结构中,内模式描述了数据库中全体数据的全局逻辑结构和特征 C.对一个数据库系统来说,实际存在的只有物理级数据库 D.数据的存储结构与数据逻辑结构之间的独立性称为数据的逻辑独立性 正确答案:C 7、下列说法中错误的是()。 A.在数据库系统中,外模式可有多个,而模式、内模式只能各有一个 B.外模式是用户视图,是概念模式的某一部分的抽象表示 C.在数据库系统中,外模式/模式映像保证了数据与应用程序间的逻辑独立性 D.一个数据库系统中,外模式/模式映像只能有一个 正确答案:D 8、下列说法中错误的是()。 A.C/S结构是一种“胖客户机”的客户机/服务器结构,是两层结构 B.在主从式结构的数据库系统中,系统的处理瓶颈在主机上

数据库系统全面概述(doc 33页)

数据库系统全面概述(doc 33页)

第一章数据库系统概论 本章目的在于使读者对数据库系统的基本知识能有一个较为全面的了解,为今后的学习和工作打下基础。本章重点介绍了有关数据库结构和数据库系统组织的基本知识和基本概念,以及常见的三种类型的数据库系统的特点。重点介绍关系数据库的有关知识。 1.1 数据管理技术发展史 随着生产力的不断发展,社会的不断进步,人类对信息的依赖程度也在不断地增加。数据作为表达信息的一种量化符号,正在成为人们处理信息时重要的操作对象。所谓数据处理就是对数据的收集、整理、存储、分类、排序、检索、维护、加工、统计和传输等一系列工作全部过程的概述。数据处理的目的就是使我们能够从浩瀚的信息数据海洋中,提取出有用的数据信息,作为我们工作、生活等各方面的决策依据。数据管理则是指对数据的组织、编码、分类、存储、检索和维护,它是数据处理的一个重要内容中心。数

据处理工作由来以久,早在1880年美国进行人口普查统计时,就已采用穿孔卡片来存储人口普查数据,并采用机械设备来完成对这些普查数据所进行的处理工作。电子计算机的出现以及其后其硬件、软件的迅速发展,加之数据库理论和技术的发展,为数据管理进入一个革命性阶段提供有力的支持。根据数据和应用程序相互依赖关系、数据共享以及数据的操作方式,数据管理的发展可以分为三个具有代表性的阶段,即人工管理阶段、文件管理阶段和数据库管理阶段。 【1】人工管理阶段 这一阶段发生于六十年代以前,由于当时计算机硬件和软件发展才刚刚起步,数据管理中全部工作,都必须要由应用程序员自己设计程序完成去完成。由于需要与计算机硬件以及各外部存储设备和输入输出设备直接打交道,程序员们常常需要编制大量重复的数据管理基本程序。数据的逻辑组织与它的物理组织基本上是相同的,因此当数据的逻辑组织、物理组织或存储设备发生变化时,进行数据管理工作的许多应用程序就必须要进行重新编制。这样就给数据管理的维护工作带来许多困难。并且由于一组数据常常只对应于一种应用程序,因此很难实现多个不同应用程

数据库系统概论第一章课后答案

第01章绪论 1 .试述数据、数据库、数据库系统、数据库管理系统的概念。 答: ( l )数据(Data ) :描述事物的符号记录称为数据。数据的种类有数字、文字、图形、图像、声音、正文等。数据与其语义是不可分的。解析在现代计算机系统中数据的概念是广义的。早期的计算机系统主要用于科学计算,处理的数据是整数、实数、浮点数等传统数学中的数据。现代计算机能存储和处理的对象十分广泛,表示这些对象的数据也越来越复杂。数据与其语义是不可分的。500 这个数字可以表示一件物品的价格是500 元,也可以表示一个学术会议参加的人数有500 人,还可以表示一袋奶粉重500 克。 ( 2 )数据库(DataBase ,简称DB ) :数据库是长期储存在计算机内的、有组织的、可共享的数据集合。数据库中的数据按一定的数据模型组织、描述和储存,具有较小的冗余度、较高的数据独立性和易扩展性,并可为各种用户共享。 ( 3 )数据库系统(DataBas 。Sytem ,简称DBS ) :数据库系统是指在计算机系统中引入数据库后的系统构成,一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员构成。解析数据库系统和数据库是两个概念。数据库系统是一个人一机系统,数据库是数据库系统的一个组成部分。但是在日常工作中人们常常把数据库系统简称为数据库。希望读者能够从人们讲话或文章的上下文中区分“数据库系统”和“数据库”,不要引起混淆。 ( 4 )数据库管理系统(DataBase Management sytem ,简称DBMs ) :数据库管理系统是位于用户与操作系统之间的一层数据管理软件,用于科学地组织和存储数据、高效地获取和维护数据。DBMS 的主要功能包括数据定义功能、数据操纵功能、数据库的运行管理功能、数据库的建立和维护功能。解析DBMS 是一个大型的复杂的软件系统,是计算机中的基础软件。目前,专门研制DBMS 的厂商及其研制的DBMS 产品很多。著名的有美国IBM 公司的DBZ 关系数据库管理系统和IMS 层次数据库管理系统、美国Oracle 公司的orade 关系数据库管理系统、s 油ase 公司的s 油ase 关系数据库管理系统、美国微软公司的SQL Serve ,关系数据库管理系统等。

数据库系统概论部分答案

第一章 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 )数据操作:是指对数据库中各种对象(型)的实例(值)允许进行的操作的集合,

1第一章数据库系统概述

第一章绪论练习 一、单项选择题 1.在数据管理技术的发展过程中,经历了人工管理阶段、文件系统阶段和数据 库系统阶段。在这几个阶段中,数据独立性最高的是()阶段。 A 数据库系统 B 文件系统 C 人工管理 D 数据项管理 2. 数据库系统的核心和基础是()。 A 物理模型 B 概念模型 C 数据模型D逻辑模型 3 数据库系统与文件系统的主要区别是()。 A 数据库系统复杂,而文件系统简单 B 文件系统不能解决数据冗余和数据独立性问题,而数据库系统可以解决 C 文件系统只能管理程序文件,而数据库系统能够管理各种类型的文件 D 文件系统管理的数据量较少,而数据库系统可以管理庞大的数据量 4 数据库的概念模型独立于()。 A 具体的机器和DBMS B E-R图 C 信息世界D现实世界 5. 实现将现实世界抽象为信息世界的是()。 A 物理模型 B 概念模型 C 关系模型D逻辑模型 6 数据库是在计算机系统中按照一定的数据模型组织、存储和应用的①B,支 持数据库各种操作的软件系统叫做②B,由计算机、操作系统、DBMS、数据库、应用程序及用户等组成的一个整体叫做③。 ① A 文件的集合B 数据的集合 C命令的集合 D 程序的集合 ② A 命令系统B 数据库管理系统 C 数据库系统 D 操作系统 ③ A 命令系统B 数据库系统 C 软件系统 D 数据库管理系统 7 长期存储在计算机内,有组织的、可共享的大量数据的集合是()。 A 数据 B 数据库 C 数据库管理系统 D 数据库系统 8 数据库具有①、最小的②和较高的③。 ① A 程序结构化B 数据结构化 C 程序标准化 D 数据模块化 ②A 冗余度 B 存储量 C 完整性 D 有效性 ③A 程序与数据可靠性 B 程序与数据完整性 C 程序与数据独立性 D 程序与数据一致性 9 在数据库中存储的是()。 A 数据 B 数据模型 C 数据及数据之间的联系 D 信息 10 数据库中,数据的物理独立性是指()。 A数据库与数据库管理系统的相互独立性

1第一章数据库系统概述教学内容

1第一章数据库系统 概述

第一章绪论练习 一、单项选择题 1.在数据管理技术的发展过程中,经历了人工管理阶段、文件系统阶段和数据 库系统阶段。在这几个阶段中,数据独立性最高的是()阶段。 A 数据库系统 B 文件系统 C 人工管理 D 数据项管理 2. 数据库系统的核心和基础是()。 A 物理模型 B 概念模型 C 数据模型 D逻辑模型 3 数据库系统与文件系统的主要区别是()。 A 数据库系统复杂,而文件系统简单 B 文件系统不能解决数据冗余和数据独立性问题,而数据库系统可以解决 C 文件系统只能管理程序文件,而数据库系统能够管理各种类型的文件 D 文件系统管理的数据量较少,而数据库系统可以管理庞大的数据量 4 数据库的概念模型独立于()。 A 具体的机器和DBMS B E-R图 C 信息世界 D现实世界 5. 实现将现实世界抽象为信息世界的是()。 A 物理模型 B 概念模型 C 关系模型 D逻辑模型 6 数据库是在计算机系统中按照一定的数据模型组织、存储和应用的①B,支 持数据库各种操作的软件系统叫做②B,由计算机、操作系统、DBMS、数据库、应用程序及用户等组成的一个整体叫做③。 ① A 文件的集合 B 数据的集合 C命令的集合 D 程序的集合 ② A 命令系统 B 数据库管理系统 C 数据库系统 D 操作系统 ③ A 命令系统 B 数据库系统 C 软件系统 D 数据库管理系统 7 长期存储在计算机内,有组织的、可共享的大量数据的集合是()。 A 数据 B 数据库 C 数据库管理系统 D 数据库系统 8 数据库具有①、最小的②和较高的③。 ① A 程序结构化 B 数据结构化 C 程序标准化 D 数据模块化 ②A 冗余度 B 存储量 C 完整性 D 有效性 ③ A 程序与数据可靠性 B 程序与数据完整性 C 程序与数据独立性 D 程序与数据一致性 9 在数据库中存储的是()。 A 数据 B 数据模型 C 数据及数据之间的联系 D 信息 10 数据库中,数据的物理独立性是指()。

《数据库系统概论》复习资料

《数据库系统概论》复习资料 ■第一章绪论 本章内容:数据库系统概述、数据模型、数据库系统结构 本章主要考点:数据、数据库、■数据库管理系统的概念、概念模型、■ER图、三种数据模型、数据库的三级模式结构 1、试述数据、数据库、数据库系统、数据库管理系统的概念 (1)数据(Data) :描述事物的符号记录称为数据。 (2)数据库(Data Base ,简称DB ):数据库是长期储存在计算机内的、有组织的、可共享的数据集合。 (3)数据库系统(Data Base System ,简称DBS ) :数据库系统是指在计算机系统中引入数据库后的系统构成,一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员构成。 (4)数据库管理系统(DataBase Management System ,简称DBMS ) :数据库管理系统是位于用户与操作系统之间的一层数据管理软件,用于科学地组织和存储数据、高效地获取和维护数据。 2、对于DB、DBS、DBMS的关系,下列哪一种描述是正确的(B) A、DB包括DBS、DBMS B、DBS包括DB、DBMS C、DBMS包括DBS、DB D、以上都不对 3、概念模型中的术语:实体、属性、码、域、实体型、实体集 实体:客观存在并可以相互区分的事物叫实体。 属性:实体所具有的某一特性,一个实体可由若干个属性来刻画。 码:惟一标识实体的属性集称为码。

域:域是一组具有相同数据类型的值的集合。 实体型:具有相同属性的实体具有相同的特征和性质,用实体名及其属性名集合来抽象和刻画同类实体,称为实体型。 实体集:同型实、体的集合称为实体集。 4、目前数据库领域中最常用的逻辑数据模型有层次模型、网状模型、关系模型等。 5、数据库管理系统的主要功能有哪些? (1)数据库定义功能(2)数据存取功能(3)数据库运行管理(4)数据库的建立和维护功能。■6、实体联系图(E— R图) 实体型:用矩形表示,矩形框内写明实体名; 属性:用椭圆形表示,并用无向边将其与相应的实体连接起来; 联系:用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体连接起来,同时在无向边旁标上联系的类型(1:1或1:n或m:n)。 ▲例:假设教学管理规定: ①一个学生可选修多门课,一门课有若干学生选修; ②一个教师可讲授多门课,一门课只有一个教师讲授; ③一个学生选修一门课,仅有一个成绩。 学生的属性有学号、学生姓名;教师的属性有教师编号,教师姓名;课程的属性有课程号、课程名。要求:根据上述语义画出ER图,要求在图中画出实体的属性并注明联系的类型;解:根据以上规则画出对于的E—R图如下

第一章 数据库系统概述

第一章数据库系统概述 1、P19-1什么是数据库,什么是数据库管 理系统,什么是数据库系统? 2、DBS由那几部分组成? 3、数据库系统具有的独立性是指() A用户与数据分离B用户与程序分离C程序与数据分离D人员与设备分离 4、数据库管理系统是专门用于管理 的软件。 5、文件系统与数据库系统的最大区别是在 方面。 6、在数据库系统的组织结构中,把概念数 据库与物理数据库联系起来的映射是 ()A.外模式/内模式 B.内模式/ 外模式 C.概念模式/内模式 D.概念 模式/外模式 7、数据库系统的数据独立性包括独立 性和独立性。 8、数据模型不用于描述( )。A.客观事 物 B.事物间的联系 C.数据存储 D. 事物及其相互间的联系。 9、数据库操纵语言(DML)的基本操作不包 括()。A.插入B.修改C.排序D. 查询。 10、内模式是描述数据如何在存储介 质上组织存储的.又称之为模式。 11、数据库(DB)、数据库系统(DBS) 和数据库管理系统(DBMS)三者之间的 关系是_______。 A.DBS包括DB和DBMS B.DBMS包括DB和DBS C.DB包括DBS和DBMS D.DBS就是DB,也就是DBMS 12、数据库管理系统的主要功能是什么? 第二章关系数据库系统 1、将下列术语中概念最接近的分组,并用 括号分别括起来:元组、关系、记录、 记录型、标识符、关系模式、实体、关 键字、实体型、实体集 2、设关系R,S如下,计算: (1)R1=R自然连接S (2)R2=R连接S,连接条件是 [2]<[5]。 3、设有两个关系R(A,B,C)和S(C,D, E),试用SQL查询语句表示关系代数表 达式)) | | ( ( , S R D B E A ? = σ π。 4、如果数据库中出现类似如“人的身高= 10米”的数据.则说明数据的()未 受到保护。A.安全性B.完整性C.一致性 5、MySql支持的数据类型有_________. 6、关系代数中三种专门的关系运算 是、、。 7、设有两个关系R (A,B,C) 和S (C,D, E),试用SQL查询语句表达下列关系代数 表达式πA,E (σB = D (R∞S))。 R S:

01第一章数据库系统概述(答案)

第一章数据库系统概述 一、单项选择题 1、下列关于数据的说法错误的是( A )。 A、数据都能参加数值运算 B、图象声音也是数据的一种 C、数据的表示形式是多样的 D、不同类型的数据处理方法不同 2、下列关于信息的说法错误的是( B )。 A、同一信息可有多种数据表示形式 B、数据库中保存的就是信息 C、信息是数据的含义 D、信息是抽象的 3、下列关于数据处理的说法正确的是( B )。 A、数据处理是将信息转换成数据的过程 B、数据处理是将数据转换成信息的过程 C、数据处理是对数据进行算术运算 D、数据处理是数据的简单收集 4、下列关于人工管理阶段的说法错误的是( C )。 A、数据不能长期保存 B、程序复杂 C、程序之间能共享数据 D、数据量小 5、下列关于文件管理阶段的说法正确的是( B )。 A、对数据统一控制管理 B、数据冗余度大 C、数据独立性强 D、数据完全实现了共享 6、在数据库管理技术发展的3个阶段中,没有专门的软件对数据进行管理的是 ( D )。 A、人工管理阶段和文件系统阶段 B、文件系统阶段 C、文件系统阶段和数据库阶段 D、人工管理阶段 7、下列关于数据库管理阶段的说法错误的是( C )。 A、数据的共享性高,冗余度低,易扩充 B、数据真正实现了结构化 C、数据独立性差 D、数据由DBMS统一管理和控制 8、数据库系统的核心任务是( B )。 A、将信息转换成数据 B、数据管理 C、实现数据共享 D、保证数据安全 9、下面列出的条目中,( D )是数据库系统的组成成员? Ⅰ.操作系统Ⅱ.数据库管理系统Ⅲ.用户 Ⅳ.数据库管理员Ⅴ.数据库 A、Ⅱ、Ⅲ、Ⅳ和Ⅴ B、Ⅱ、Ⅳ和Ⅴ C、Ⅰ、Ⅱ、Ⅳ和Ⅴ D、全部 10、数据库的特点之一是数据共享,严格地讲,这里的数据共享指( C )。 A、同一应用中的多个程序共享一个数据集合 B、多个用户、同一种语言共享数据 C、多种应用、多种语言、多个用户相互覆盖地使用数据集合 D、多个用户共享一个数据文件 11、在数据库中可以创建、修改和删除表,这是因为数据库管理系统提供了( A)。

相关主题
文本预览
相关文档 最新文档