当前位置:文档之家› 基础教程-SQL_Server2008_创建数据库以及数据库基础详解资料

基础教程-SQL_Server2008_创建数据库以及数据库基础详解资料

基础教程-SQL_Server2008_创建数据库以及数据库基础详解资料
基础教程-SQL_Server2008_创建数据库以及数据库基础详解资料

第2章创建数据库

《转自网上-初学用到得资料,感觉很好,就分享给大家,仅仅是转载》

数据库是用来存储数据的空间,它作为存储结构的最高层次是其他一切数据库操作的基础。用户可以通过创建数据库来存储不同类别或者形式的数据。

因此,在本章用户将详细地学习针对数据库的基本操作和数据库的日常管理操作,即如何创建数据库、对数据/日志文件进行操作、生成数据库快照等日常操作。

本章学习目标:

?了解数据库对象及构成

?掌握创建数据库的两种方法

?掌握管理数据库的方法

?了解数据库快照

2.1 SQL Server数据库概述

SQL Server中的数据库是由数据表的集合组成的,每个数据表中包含数据以及其他数据库对象,这些对象包括视图、索引、存储过程和触发器等。

数据库系统使用一组操作系统文件来映射数据库管理系统中保存的数据库,数据库中的所有数据和对象都存储在其映射的操作系统文件中。这些操作系统文件可以是数据文件或日志文件。

要熟练地理解和掌握数据库,必须对数据库的一些基本概念及构成有一个清楚的认识。

2.1.1 常见数据库对象

数据库中存储了表、视图、索引、存储过程、触发器等数据库对象,这些数据库对象存储在系统数据库或用户数据库中,用来保存SQL Server数据库的基本信息及用户自定义的数据操作等。

1.表与记录

表是数据库中实际存储数据的对象。由于数据库中的其他所有对象都依赖于表,因此可以将表理解为数据库的基本组件。一个数据库可以有多个行和列,并且每列包含特定类型的信息。列和行也可以称为字段与记录。字段是表中纵向元素,包含同一类型的信息,例如读者卡号(Rcert)、姓名(name)和性别(Sex)等;字段组成记录,记录是表中的横向元素,包含有

单个表内所有字段所保存的信息,例如读者信息表中的一条记录可能包含一个读者的卡号、姓名和性别等。如图2-1所示为【图书管理系统(BookDateBase)】数据库中【读者信息(Reader)】数据表的内容.

图2-1 【读者信息(Reader)】数据表

2.视图

视图是从一个或多个基本(数据)表中导出的表,也被称为虚表。视图与表非常相似,也是由字段与记录组成。与表不同的是,视图不包含任何数据,它总是基于表,用来提供一种浏览数据的不同方式。视图的特点是,其本身并不存储实际数据,因此可以是连接多张数据表的虚表,还可以是使用WHERE子句限制返回行的数据查询的结果。并且它是专用的,比数据表更直接面向用户。如图2-2所示是正在创建的视图,它的结果来自【图书管理系统(BookDateBase)】数据库中的【读者信息(Reader)】表、【图书信息(Books)】表和【借阅信息(BorrowOrReturn)】表。

图2-2 【读者信息_借阅信息_图书信息表】视图

3.索引

索引是一种无须扫描整个表就能实现对数据快速访问的途径,使用索引可以快速访问数

据库表中的特定信息。索引是对数据库表中一列或多列的值进行排序的一种结构,例如【读者信息(Reader)】数据表中的【员工卡号(Rcert)】列。如果要查找某一读者姓名,索引会帮助用户更快地获得所查找的信息。

4.约束

约束是SQL Server 2008实施数据一致性和完整性的方法,是数据库服务器强制的业务逻辑关系。约束限制了用户输入到指定列中值的范围,强制了引用完整性。主键和外键就是约束的一种形式。当在数据库设计器中创建约束时,约束必须符合创建和更改表的ANSI标准。

5.数据库关系图

在讲述规范化和数据库设计时会详细讲述数据库关系图,这里只要清楚数据库关系图是数据库设计的视觉表示,它包括各种表、每一张表的列名以及表之间的关系。在一个实体关系(Entity-Relationship,或者叫E-R关系图)中,数据库被分成两部分:实体(如“生产企业”和“顾客”)和关系(“提供货物”和“消费”)。

6.默认值

如果在向表中插入新数据时没有指定列的值,则默认值就是指定这些列中所的值。默认可以是任何取值为常量的对象。默认值也是SQL Server提供确保数据一致性和完整性的方法。

在SQL Server 2008中,有两种使用默认值的方法。第一种,在创建表时,指定默认值。如果使用SQL Server Management Studio,则可以在设计表时指定默认值。如果使用Transact-SQL语言,则在CREATE TABLE语句中使用DEFAULT子句。第二种,使用CREATE DEFAULT语句创建默认对象,然后使用存储过程sp_binddefault将该默认对象绑定到列上。7.规则

规则和约束都是限制插入到表中的数据类型的信息。如果更新或插入记录违反了规则,则插入或更新操作被拒绝。此外,规则可用于定义自定义数据库类型上的限制条件。与约束不同,规则不限于特定的表。它们是独立对象,可绑定到多个表,或者甚至绑定到特定数据类型(从而间接用于表中)。

8.存储过程

存储过程与其他编程语言中的过程类似,原因主要有以下几点:

●接收输入参数并以输出参数的格式向调用过程或批处理返回多个值

●包含用于在数据库中执行操作(包括调用其他过程)的编程语句

●向调用过程或批处理的返回状态值,以指明成功或失败(以及失败的原因)

●可以使用EXECUTE语句来运行存储过程。但是,存储过程与函数不同,因为存储过程不返回取

代其名称的值,也不能直接在表达式中使用。

9.触发器

触发器是一种特殊类型的存储过程,这是因为触发器也包含了一组Transact-SQL语句。但是,触发器又与存储过程明显不同,例如触发器可以执行。如果希望系统自动完成某些操作,并且自动维护确定的业务逻辑和相应的数据完整,那么可以通过使用触发器来实现。

触发器可以查询其他表,而且可以包含复杂的Transact-SQL语句。他们主要用于强制服从复杂的业务规则或要求。例如,用户可以根据商品当前的库存状态,决定是否需要向供应

商进货。

在SQL Server 2008中,一个重要的特性是允许用户使用熟悉的CLR 语言

创建存储过程和触发器。

10.用户和角色

用户是指对数据库有存取权限的使用者。角色是指一组数据库用户的集合,和Windows 中用户组类似。数据库中的用户组可以根据需要添加,用户如果被加入到某一角色,则将具有该角色的所有权限。

2.1.2 数据库构成

在SQL Server 中,用于数据存储的实用工具是数据库。而数据库从大的方面分,包括系统数据库和用户数据库。每个SQL Server 数据库(无论是系统数据库还是用户数据库)在物理上都由至少一个数据文件和至少一个日志文件组成。出于分配和管理目的,可以将数据库文件分成不同的文件组。

1.系统数据库

无论SQL Server 的哪一个版本,都存在一组系统数据库。系统数据库中保存的系统表用于系统的总体控制。系统数据库保存了系统运行及对用户数据的操作等基本信息。这些系统数据分别是Master 、Model 、Msdb 和Tempdb 。这些系统数据库的文件存储在SQL Server 的默认安装目录的MMSQL 子目录的Data 文件夹中。

● master 数据库

master 数据库是SQL Server 是最重要的数据库,它位于SQL Server 的核心,如果该数据库被损坏,SQL Server 将无法正常工作。master 数据库中包含了所有的登录名或用户ID 所属的角色;服务器中的数据库的名称及相关信息;数据库的位置;SQL Server 如何初始化四方面的重要信息。

定期备份master 数据库非常重要。确保备份master 数据库是备份策略的一

部分。

● model 数据库

创建数据库时,总是以一套预定义的标准为模型。例如,若希望所有的数据库都有确定的初始大小,或者都有特定的信息集,那么可以把这些信息放在model 数据库中,以model 数据库作为其他数据库的模板数据库。如果想要使所有的数据库都有一个特定的表,可以把该表放在model 数据库里。

model 数据库是tempdb 数据库的基础。对model 数据库的任何改动都将反映在tempdb 数据库中,所以,在决定对model 数据库有所改变时,必须预先考虑好并多加小心。

●Msdb数据库

msdb给SQL Server代理提供必要的信息来运行作业,因而,他是SQL Server中另一个十分重要的数据库。

SQL Server代理是SQL Server中的一个Windows服务,用以运行任何已创建的计划作业(例如包含备份处理的作业)。作业是SQL Server中定义的自动运行的一系列操作,他

不需要任何手工干预来启动。

●Tempdb数据库

Tempdb数据库用作系统的临时存储空间,其主要作用是存储用户建立的临时表和临时存储过程,存储用户说明的全局变量值,为数据排序创建临时表,存储用户利用游标说明所

筛选出来的数据。

让tempdb被来自不好的存储过程(对于创建有太多记录的表没有明

确限制)的表中的记录所填满。如果发生了这种情况,不仅当前的

处理不能继续,整个服务器都可能无法工作,从而将影响到在该服

务器上的所有用户。

使用数据库的时候要记住一点,SQL Server 2008的设计是可以在必要时自动扩展数据

库的。这意味着master、model、tempdb、msdb和其他关键的数据库将不会在正常的情况下

缺少空间的。如表2-1中列出了这些系统数据库在SQL Server 2008系统中的主文件、逻辑

名称、物理和文件增长比例。

2.示例数据库

示例数据库是Microsoft给出的用于用户使用的数据库。示例数据库中包含了各种数据

库对象,使用户可以自由地对其中的数据或者表结构进行查询、修改等操作。

在安装SQL Server 2008的过程中,可以在安装组件窗口中选择安装示例数据库,默认

的示例数据库有AdventureWorks和AdventureWorksDW两个。AdventureWorks数据库相对

于以前SQL Server版本的示例数据库更加健壮。虽然他对于初学者有一定的复杂性,但是该

数据库具有相当完成的实例,及更接近实际的数据容量、复杂的结构和部件。

AdventureWorksDW数据库是Analysis Services(分析服务)的示例数据库。Microsoft将分析示例数据库与事务示例数据库联系在一起,以提供展示两者协同运行的完成示例数据库。

2.1.3 数据库文件和文件组

在SQL Server 2008系统中,一个数据库至少有一个数据文件和一个事务日志文件。当然,该数据库也可以有多个数据文件和多个事务日志文件。数据文件用于存放数据库的数据和各种对象,事务日志文件用于存放事务日志。

数据文件又可以分成主数据文件和辅助数据文件两种形式。主数据文件是数据库的起点,每一个数据库都有且仅有一个主数据文件。主数据文件名称的默认后缀是.mdf。辅助数据文件是可选的,用来存放不在主数据文件中的其他数据和对象。数据库可以没有辅助数据文件,也可以有多个辅助数据文件,默认后缀是.ndf。

事务是一个单元的工作,该单元的工作要么全部完成,要么全部不完成。SQL Server 2008系统具有事务功能,可以保证数据库操作的一致性和完整性。SQL Server 2008系统使用数据库的事务日志来实现事务的功能。通常情况下,事务日志记录了对数据库的所有修改操作。事务日志记录了每一个事务的开始、对数据的改变和取消修改等信息。随着对数据库的持续不断地操作,日志是连续增加的。对于一些大型操作,例如创建索引,日志只是记录该操作的事实,而不是记录所发生的数据。事务日志还记录了数据页的分配和释放,以及每一个事务的提交和回滚等信息。这样就允许SQL Server系统恢复和取消事务。当事务没有完成时,则取消该事务。事务日志以操作系统文件的形式存在,在数据库中被称为日志文件。每一个数据库都至少有一个日志文件。日志文件名称的默认后缀是.ldf。

在操作系统中,数据库是作为数据文件和日志文件而存在的,明确地指明了这些文件的位置和名称。但是,在SQL Server系统内部,例如在Transact-SQL语言中,由于物理文件名称比较长,使用起来非常不方便。为此,数据库又有逻辑文件的概念。每一个物理文件都对应一个逻辑文件。在使用Transact-SQL语句的过程中,引用逻辑文件非常快捷和方便。

文件组就是文件的逻辑集合。文件组可以把一些指定的文件组合在一起,以方便管理和分配数据。例如,在某个数据库中,3个文件(如data1.ndf、data2.ndf和data3.ndf)分别创建在3个不同的磁盘驱动器中,并且为他们指定了一个文件组group1。以后,所创建的表可以明确指定存放在文件组group1中。对该表中数据的查询将分布在这3个磁盘上同时进行,因此可以通过执行并行访问而提高查询性能。在创建表时,不能指定将表放在某个文件中,只能指定将表放在某个文件组中。因此,如果希望将某个表放在特定的文件中,必须通过创建文件组来实现。使用文件和文件组时,应该考虑下列因素:

●一个文件或者文件组只能用于一个数据库,不能用于多个数据库。

●一个文件只能是某一个文件组的成员,不能是多个文件组的成员。

●数据库的数据信息和日志信息不能放在同一个文件或文件组中,数据文件和日志文件总是分开

的。

●日志文件永远也不能是任何文件组的一部分。

在SQL Server 2008系统中,可管理的最小物理空间以页为单位,每一个页的大小是8

KB,即8192字节。在表中,每一行数据都不能跨页存储。这样,表中每一行的字节数不能超过8192个字节。在每一个页上,由于系统占用了一部分空间用来记录与该页有关的系统信息,所以每一个页可用的空间是8060个字节。但是,包含了varhcar、nvarchar、varbinar y等数据类型的列的表则不受这种规则限制。每8个连续页称为一个区,即区的大小是64K B。这意味着1MB的数据库有16个区。区用于控制表、索引的存储。

通过理解数据库的空间管理,可以估算数据库的设计尺寸。数据库的大小等于所有表大小与索引大小之和。假设某个数据库只有一个表,该表的数据行字节是800Byte。这时,一个数据页上最多只能放10行数据。如果该表大约有100万行的数据,那么该表占用10万个数据页的空间。因此,该数据库的大小估计为:100000×8KB=800000KB=781.25MB。根据数据库大小的估计值,再考虑其他的因素,就可以得到数据库的设计值。

须带mdf、ndf和ldf扩展名,但使用扩展名指出文件类型是个良好的文件命名

习惯。

2.2 创建数据库

创建数据库就是为数据库确定名称、大小、存放位置、文件名和所在文件组的过程。在一个SQL Server 2008实例中,最多可以创建32767个数据库,数据库的名称必须满足系统的标识符规则。在命名数据库时,一定要使数据库名称简短并有一定的含义。

在SQL Server 2008中创建数据库的方法主要有两种:一是在SQL Server Management Studio窗口中使用现有命令和功能,通过方便的图形化向导创建;二是通过编写Transact-SQL 语句创建。

2.2.1 使用图形化向导创建

SQL Server Management Studio是SQL Server系统运行的核心窗口,它提供了用于数据库管理的图形工具和功能丰富的开发环境,方便数据库管理员及用户进行操作。

首先来介绍如何使用SQL Server Management Studio来创建自己的用户数据库。在SQL Server 2008中,通过SQL Server Management Studio创建数据库是最容易的方法,对初学者来说简单易用。下面以创建本书的示例数据库【图书管理系统(BookDateBase)】数据库为例,对这种方法作详细介绍。具体的操作步骤如下所示:

(1)从【开始】菜单中选择【程序】|Microsoft SQL Server 2008|SQL Server Manage ment Studio命令,打开Microsoft SQL Server Management Studio窗口,并使用Windows

或SQL Server身份验证建立连接。如图2-3所示。

图2-3 连接服务器身份验证

(2)在【对象资源管理器】窗格中展开服务器,然后选择【数据库】节点。

(3)在【数据库】节点上右击,从弹出的快捷菜单中选择【新建数据库】命令,如图2-4所示。

图2-4 选择【新建数据库】命令

(4)执行上述操作后,会弹出【新建数据库】对话框,如图2-5所示。

在这个对话框中有三个页,分别是【常规】、【选项】和【文件组】页。完成这三个选项中的内容之后,就完成了数据库的创建工作。

图2-5 【新建数据库】对话框

(5)在【数据库名称】文本框中输入要新建数据库的名称,例如这里输入“工资管理系统”。

(6)在【所有者】文本框中输入新建数据库的所有者,如sa 。根据数据库的使用情况,选择启用或者禁用【使用全文索引】复选框。

(7)在【数据库文件】列表中,包括两行:一行是数据文件,而另一行是日志文件。通过单击下面相应按钮,可以添加或者删除相应的数据文件。该列表中各字段值的含义如下:

逻辑名称指定该文件的文件名,其中数据文件与SQL Server 2000不同,在默认情况下不再为用户输入的文件名添加下划线和Data 字样,相应的文件扩展名并未改变。

文件类型用于区别当前文件是数据文件还是日志文件。 ● 文件组显示当前数据库文件所属的文件组。一个数据库文件只能存在于一个文件组里。

在创建数据库时,系统自动将model 数据库中的所有用户自定义的对象都复制

到新建的数据库中。用户可以在model 系统数据库中创建希望自动添加到所有新建

数据库中的对象,例如表、视图、数据类型、存储过程等。

初始大小制定该文件的初始容量,在SQL Server 2008中数据文件的默认值为3MB ,日志文件的默认值为1MB. ● 自动增长用于设置在文件的容量不够用时,文件根据何种增长方式自动增长。通过单击【自动增长】列中的省略号按钮,打开【更改自动增长设置】窗口进行设置。如图2-6和图2-7所示分别为数据文件、日志文件的自动增长设置窗口。

图2-6 数据文件自动增长设置图2-7 日志文件自动增长设置 路径指定存放该文件的目录。在默认情况下,SQL Server 2008将存放路径设置为SQL Server 2008安装目录下的data子目录。单击该列中的按钮可以打开【定位文件夹】对话框更改数据库的存放路径。

(8)单击【选项】按钮,设置数据库的排序规则、恢复模式、兼容级别和其他需要设置的内容,如图2-8所示。

图2-8 新建数据库【选项】页

(9)单击【文件组】可以设置数据库文件所属的文件组,还可以通过【添加】或者【删除】按钮更改数据库文件所属的文件组。如图2-9所示。

图2-9 新建数据库【文件组】页

(10)完成以上操作后,就可以单击【确定】关闭【新建数据库】对话框。至此,成功创建了一个数据库,可以通过【对象资源管理器】窗格查看新建的数据库。

在SQL Server 2008中创建新的对象时,他可能不会立即出现在【对象资

源管理器】窗格中,可右击对象所在位置的上一层,并选择【刷新】命令,即可强制SQL Server 2008重新读取系统表并显示数据中的所有新对象。

2.2.2 使用Transact-SQL 语句创建

使用SQL Server Management Studio 创建数据库可以方便应用程序对数据的直接调用。但是,有些情况下,不能使用图形化方式创建数据库。比如,在设计一个应用程序时,开发人员会直接使用Transact-SQL 在程序代码中创建数据库及其他数据库对象,而不用在制作应用程序安装包时再放置数据库或让用户自行创建。

SQL Server 2008使用的Transact-SQL 是标准SQL (结构化查询语言)的增强版本,使用他提供的CREATE DATABASE 语句同样可以完成新建数据库操作。下面同样以创建【图书管理系统(BookDateBase )】数据库为例来介绍如何使用Transact-SQL 语句创建一个数据库。

使用CREATE DATABASE 语句创建数据库最简单的方式如下所示:

按照方式只需指定databaseName 参数即可,他表示要创建的数据库的名称,其他与数据库有关的选项都采用系统的默认值。例如,创建【图书管理系统(BookDateBase

)】数据

库,则语句为:

1.CREATE DATABASE语法格式

如果希望在创建数据库时明确的指定数据库的文件和这些文件的大小以及增长的方式。首先就需要了解CREATE DATABASE语句的语法,其完整的格式如下:

2.CREATE DATABASE语法格式说明

在语法格式中,每一种特定的符号都表示有特殊的含义,其中:

●方括号[]中的内容表示可以省略的选项或参数,[1,…n]表示同样的选项可以重复1到n遍。

●如果某项的内容太多需要额外的说明,可以用<>括起来,如句法中的,而

该项的真正语法在::=后面加以定义。

●大括号{}通常会与符号|连用,表示{}中的选项或参数必选其中之一,不可省略。

例如,MAXSIZE ={ max_size [ KB | MB | GB | TB ] | UNLIMITED }表示定义数据库文件的最大容量,或者指定一个具体的容量max_size [ KB | MB | GB | TB ],或者指定容量没有限制UNLIMITED,但是不能空缺。下面表2-2列出了关于语法中主要参数的说明。

表2-2 语法参数说明

参数说明

database_name 数据库名称

Logical_file_name 逻辑文件名称

os_file_name 操作系统下的文件名和路径

size 文件初始容量

max_size 文件最大容量

growth_increment 自动增长值或比例

filegroup_name 文件组名

3.CREATE DATABASE关键字和参数说明

●CREATE DATABASE database_name 用于设置数据库的名称,可长达128个字符,需要将

database_name替换为需要的数据库名称,如【工资管理系统】数据库。在同一个数据库中,数据库名必须具有惟一性,并符合标识命名标准。

●NAME=logical_file_name 用来定义数据库的逻辑名称,这个逻辑名称将用来在Transact_SQL代

码中引用数据库。该名称在数据库中应保持惟一,并符合标识符的命名规则。这个选项在使用了FOR ATTACH时不是必须的。

●FILENAME=os_file_name 用于定义数据库文件在硬盘上的存放路径与文件名称。这必须是本地

目录(不能是网络目录),并且不能是压缩目录。

●SIZE=size[KB|MB|GB|TB] 用来定义数据文件的初始大小,可以使用KB、MB、GB或TB为计量

单位。如果没有为主数据文件指定大小,那么SQL Server将创建与model系统数据库相同大小的文件。

如果没有为辅助数据库文件指定大小,那么SQL Server将自动为该文件指定1MB大小。

●MAXSIZE={max_size[KB|MB|GB|TB]UNLIMITED} 用于设置数据库允许达到的最大大小,可以使用

KB、MB、GB、TB为计量单位,也可以为UNLIMTED,或者省略整个子句,使文件可以无限制增长。

●FILEGROWTH=growth_increment[KB|MB|%] 用来定义文件增长所采用的递增量或递增方式。他

可以使用KB、MB或百分比(%)为计量单位。如果没有指定这些符号之中的任一符号,则默认MB 为计量单位。

●FILEGROUP filegroup_name 用来为正在创建的文件所基于的文件组指定逻辑名称。

数据库系统基础教程(第二版)课后习题答案

Database Systems: The Complete Book Solutions for Chapter 2 Solutions for Section 2.1 Exercise 2.1.1 The E/R Diagram. Exercise 2.1.8(a) The E/R Diagram Kobvxybz Solutions for Section 2.2 Exercise 2.2.1 The Addresses entity set is nothing but a single address, so we would prefer to make address an attribute of Customers. Were the bank to record several addresses for a customer, then it might make sense to have an Addresses entity set and make Lives-at a many-many relationship. The Acct-Sets entity set is useless. Each customer has a unique account set containing his or her accounts. However, relating customers directly to their accounts in a many-many relationship conveys the same information and eliminates the account-set concept altogether. Solutions for Section 2.3 Exercise 2.3.1(a) Keys ssNo and number are appropriate for Customers and Accounts, respectively. Also, we think it does not make sense for an account to be related to zero customers, so we should round the edge connecting Owns to Customers. It does not seem inappropriate to have a customer with 0 accounts;

数据库应用基础教程答案

数据库应用基础教程答案 【篇一:access数据库应用基础教程(第三版)习题及答 案】 txt>程(第三版)习题集答案 第1章数据库系统概述 1. 什么是数据库?什么是数据库系统?答:数据库(database) 是存放数据的仓库,严格的讲,数据库是长期存储在计算机内,有组 织的,可共享的大量数据集合。 数据库系统(database systems),是由数据库及其管理软件组成的系统。它是为适应数据处理的需要而发展起来的一种较为理想的 数据处理的核心机构。它是一个实际可运行的存储、维护和应用系 统提供数据的软件系统,是存储介质、处理对象和管理系统的集合体。 2. 什么是数据库管理系统?它有哪些主要功能? 答:数据库管理系统(database management system)是一种操纵 和管理数据 库的大型软件,用于建立、使用和维护数据库,简称dbms。它对数据库进行统一的管理和控制,以保证数据库的安全性和完整性。 数据库管理系统的主要功能有:数据定义、数据操作、数据库的运 行管理、数据组织、数据库的保护、数据库的维护和通信。 3. 说出几种常用的数据模型。 答:层次模型、网状模型、关系模型。 4. 什么是关系模型? 答:关系模型是用二维表的形式表示实体和实体间联系的数据模型。 5. 简述数据库设计的步骤。 答:需求分析、概念结构设计、逻辑结构设计、物理结构设计、数 据库的建立和测试、数据库运行和维护。 第2章 sql 语言简介 1. 什么是sql语言?sql语言具有哪些特点和功能? 答:sql是一种数据库查询和程序设计语言,用于存取数据以及查询更新和管理关系 数据库系统。 sql的特点和功能有:查询,操作,定义和控制四个方面,sql语言 具有高度的非过程化,语言简洁,语义明显,语法结构简单,直观

数据库基础教程CH1 答案

Exercises 2.3.1 In this exercise we introduce one of our running examples of a relational database schema. The database schema consists of four relations, whose schemas are: Product (maker, model, type) PC (model, speed, ram. hd, price) Laptop (model, speed, ram, hd, screen, price) Printer (model, color, type, price) The Product relation gives the manufacturer, model number and type (PC, laptop, or printer) of various products. We assume for convenience that model numbers are unique over all manufacturers and product types; that assumption is not realistic, and a real database would include a code for the manufacturer as part of the model number. The PC relation gives for each model number that is a PC the speed (of the processor, in gigahertz), the amount of RAM (in megabytes), the size of the hard disk (in gigabytes), and the price. The Laptop relation is similar, except that the screen size (in inches) is also included. The Printer relation records for each printer model whether the printer produces color output (true, if so), the process type (laser or ink-jet, typically), and the price. Write the following declarations: a) A suitable schema for relation Product. b) A suitable schema for relation PC. c) A suitable schema for relation Laptop. d) A suitable schema for relation Printer. e)An alteration to your Printer schema from (d) to delete the attribute color. f)An alteration to your Laptop schema from (c) to add the attribute od (optical-disk type, e.g., cd or dvd). Let the default value for this attribute be 'none' if the laptop does not have an optical disk. Exercise 2.3.1a CREATE TABLE Product ( maker CHAR(30), model CHAR(10) PRIMARY KEY, type CHAR(15) ); Exercise 2.3.1b CREATE TABLE PC ( model CHAR(30), speed DECIMAL(4,2), ram INTEGER, hd INTEGER, price DECIMAL(7,2) );

南京理工大学《数据库系统基础教程》试题和答案

一、选择题60(选择一个最合适的答案,在答题纸上涂黑) 1.一个事务中的一组更新操作是一个整体,要么全部执行,要么全部不执行。这是事务的:A.原子性B.一致性 C.隔离性 D.持久性 2.在数据库的三级模式结构中,描述一个数据库中全体数据的全局逻辑结构和特性的是:A.外模式 B.模式 C.存储模式D.模式 3.关于联系的多重性,下面哪种说法不正确? A.一个多对多的联系中允许多对一的情形。 B.一个多对多的联系中允许一对一的情形。 C.一个多对一的联系中允许一对一的情形。 D.一个多对一的联系中允许多对多的情形。 4.考虑学校里的"学生"和"课程"之间的联系,该联系的多重性应该是: A. 一对一 B. 多对一 C. 一对多 D. 多对多 5.下面哪种约束要求一组属性在同一实体集任意两个不同实体上的取值不同。 A. 键(key)约束。 B. 单值约束。 C. 参照完整性。 D. 域(domain)约束 6.关系模型要求各元组的每个分量的值必须是原子性的。对原子性,下面哪种解释不正确:A.每个属性都没有部结构。 B.每个属性都不可再分解。 C.各属性值应属于某种基本数据类型。 D.属性值不允许为NULL。 7.对于一个关系的属性(列)集合和元组(行)集合,下面哪种说法不正确: A.改变属性的排列次序不影响该关系。 B.改变元组的排列次序不影响该关系。 C.改变元组的排列次序会改变该关系。 D.关系的模式包括其名称及其属性集合。 8.若R是实体集R1与R2间的一个多对多联系,将其转换为关系R',哪种说法不正确:A.R'属性应包括R1与R2的所有属性。 B.R'属性应包括R1与R2的键属性。 C.R1与R2的键属性共同构成R'的键。 D.R'的属性应包括R自身定义的属性。 9.关于函数依赖的判断,下面哪种说法不正确? A.若任意两元组在属性A上一致,在B上也一致,则有A → B成立。 B.若任意两元组在属性A上一致,在B上不一致,则A → B不成立。 C.若任意两元组在属性A上不可能一致,则不管在B上是否一致,有A → B成立。

Access数据库应用基础教程(第三版)习题及答案

Access数据库应用基础教程(第三版)习题集答案 第1章数据库系统概述 1. 什么是数据库?什么是数据库系统?答:数据库(database)是存放数据的仓库,严格的讲,数据库是长期存储在计算机内,有组织的,可共享的大量数据集合。 数据库系统(database systems),是由数据库及其管理软件组成的系统。它是为适应数据处理的需要而发展起来的一种较为理想的数据处理的核心机构。它是一个实际可运行的存储、维护和应用系统提供数据的软件系统,是存储介质、处理对象和管理系统的集合体。 2. 什么是数据库管理系统?它有哪些主要功能? 答:数据库管理系统(database management system)是一种操纵和管理数据

库的大型软件,用于建立、使用和维护数据库,简称dbms。它对数据库进行统一的管理和控制,以保证数据库的安全性和完整性。数据库管理系统的主要功能有:数据定义、数据操作、数据库的运行管理、数据组织、数据库的保护、数据库的维护和通信。 3. 说出几种常用的数据模型。 答:层次模型、网状模型、关系模型。4. 什么是关系模型? 答:关系模型是用二维表的形式表示实体和实体间联系的数据模型。 5. 简述数据库设计的步骤。 答:需求分析、概念结构设计、逻辑结构设计、物理结构设计、数据库的建立和测试、数据库运行和维护。 第2章 SQL 语言简介 1. 什么是SQL语言?SQL语言具有哪些特点和功能? 答:SQL是一种数据库查询和程序设计语言,用于存取数据以及查询更新和管理关系

数据库系统。 SQL的特点和功能有:查询,操作,定义和控制四个方面,SQL语言具有高度的非过程化,语言简洁,语义明显,语法结构简单,直观易懂的特点。SQL语言即可以作为独立语言使用,用户可以在终端键盘上直接键入SQL命令对数据库进行操作,也可以作为嵌入式语言,嵌入到其他高级语言中。 2. SQL语言包含哪几个部分? 答:SQL语言包含4个部分:数据定义语言(DDL-Data Definition Language)、数据查询语言(DQL-Data Query Language)、数据操纵语言(DML-Data Manipulation Language)、数据控制语言(DCL-Data Control Language) 3. 在联接查询中,包含哪几类联接?答:联接可分为3类: (1)内部联接(典型的联接运算,使用类似于 = 或 <> 的比较运算符)。内部联接使用比较运算符根据每个表的通用列中的值匹配两个表中的行。内部联接包括同等

易语言数据库教程之ACCESS数据库全操作

易语言数据库教程之ACCESS数据库 前面我们已经对比分析过易语言所支持的几种常见数据库,在这几种数据库中,我们先来学习一个ACCESS数据库,当然,MSSQL数据库是完全一样的。 数据库的学习可以说非常的简单,也可以说很不简单,这要看你的出发点来定,当然,前面所学习的易语言基础同样很重要! 和前面所有的教程一样,所讲的内容部分来源我的课堂教学,面对的是高中学生,有些地方的讲解会非常的详细,而有些地方又会相对简单的一笔带过,如果有什么地方你理解起来有困难的话,请与我联系,呵呵! 本教程并不是要把易语言中对ACCESS数据库的所有操作和应用都讲一遍,都讲清楚,那是不可能的,这一点倒是有点遗憾,但我会尽我所能把一些必需的内容讲清楚! 一、准备工作 1、ACCESS的安装参见Microsoft Office2003安装图解教程 2、ACCESS数据库中数据表的建立 3、易语言ACCESS数据库控件介绍 二、数据库操作 1、易语言ACCESS数据库的连接及打开 2、易语言ACCESS数据库的读操作 3、易语言ACCESS数据库的读操作问题解决 4、易语言ACCESS数据库的高级打开操作 5、易语言ACCESS数据库的写操作 6、易语言ACCESS数据库记录的简单修改 7、易语言ACCESS数据库记录的高级修改 三、数据库与高级表格

1、易语言ACCESS数据库与高级表格一 ACCESS数据库中数据表的建立 在ACCESS中建立一个数据库及在数据库中建立数据库其实是非常简单的。 1、新建数据库,这就不用多说了,在“文件”菜单下第一个就是“新建”,它的快捷键是“Ctrl+N”,和大多数软件完全一样。 2、新建的数据库第一步操作就是要保存,这也不用多说了,相信大家都会的。 3、新建数据表,新建的数据库如下图,是一个表都没有,新建一个数据表的方法有很多,这里我们选择“使用设计器创建表”,如下图所示。 3、这里我们以建立一个学生成绩表为例进行操作,随便写了一些字段在里面,注意一下字段的类型,有些是“自动编号”,有些是“文本”,有些是“数字”,根据需要来,最后别忘记给“id”这个字段设置为“主键”。

数据库系统基础教程(第二版)课后习题答案2

Database Systems: The Complete Book Solutions for Chapter 2 Solutions for Section 2.1 Exercise 2.1.1 The E/R Diagram. Exercise 2.1.8(a) The E/R Diagram Kobvxybz Solutions for Section 2.2 Exercise 2.2.1 The Addresses entity set is nothing but a single address, so we would prefer to make address an attribute of Customers. Were the bank to record several addresses for a customer, then it might make sense to have an Addresses entity set and make Lives-at a many-many relationship. The Acct-Sets entity set is useless. Each customer has a unique account set containing his or her accounts. However, relating customers directly to their accounts in a many-many relationship conveys the same information and eliminates the account-set concept altogether. Solutions for Section 2.3 Exercise 2.3.1(a) Keys ssNo and number are appropriate for Customers and Accounts, respectively. Also, we think it does not make sense for an account to be related to zero customers, so we should round the edge connecting Owns to Customers. It does not seem inappropriate to have a customer with 0 accounts;

基础教程-SQL_Server2008_创建数据库以及数据库基础详解资料

第2章创建数据库 《转自网上-初学用到得资料,感觉很好,就分享给大家,仅仅是转载》 数据库是用来存储数据的空间,它作为存储结构的最高层次是其他一切数据库操作的基础。用户可以通过创建数据库来存储不同类别或者形式的数据。 因此,在本章用户将详细地学习针对数据库的基本操作和数据库的日常管理操作,即如何创建数据库、对数据/日志文件进行操作、生成数据库快照等日常操作。 本章学习目标: ?了解数据库对象及构成 ?掌握创建数据库的两种方法 ?掌握管理数据库的方法 ?了解数据库快照 2.1 SQL Server数据库概述 SQL Server中的数据库是由数据表的集合组成的,每个数据表中包含数据以及其他数据库对象,这些对象包括视图、索引、存储过程和触发器等。 数据库系统使用一组操作系统文件来映射数据库管理系统中保存的数据库,数据库中的所有数据和对象都存储在其映射的操作系统文件中。这些操作系统文件可以是数据文件或日志文件。 要熟练地理解和掌握数据库,必须对数据库的一些基本概念及构成有一个清楚的认识。 2.1.1 常见数据库对象 数据库中存储了表、视图、索引、存储过程、触发器等数据库对象,这些数据库对象存储在系统数据库或用户数据库中,用来保存SQL Server数据库的基本信息及用户自定义的数据操作等。 1.表与记录 表是数据库中实际存储数据的对象。由于数据库中的其他所有对象都依赖于表,因此可以将表理解为数据库的基本组件。一个数据库可以有多个行和列,并且每列包含特定类型的信息。列和行也可以称为字段与记录。字段是表中纵向元素,包含同一类型的信息,例如读者卡号(Rcert)、姓名(name)和性别(Sex)等;字段组成记录,记录是表中的横向元素,包含有

VBNET数据库编程基础教程

VBNET数据库编程基础教程 众所周知,https://www.doczj.com/doc/2111332371.html,自身并不具备对数据库进行操作的功能,它对数据库的处理是通过.NET FrameWork SDK中面向数据库编程的类库和微软的MDAC来实现的。其中,https://www.doczj.com/doc/2111332371.html,又是.NET FrameWork SDK中重要的组成部分。要了解https://www.doczj.com/doc/2111332371.html,的数据库编程,首先要明白https://www.doczj.com/doc/2111332371.html,的工作原理以及相关的对象、方法、属性。本文将结合具体实例为你简单介绍https://www.doczj.com/doc/2111332371.html,数据库访问对象以及https://www.doczj.com/doc/2111332371.html,数据库编程基本方法。 一、https://www.doczj.com/doc/2111332371.html,数据库访问对象 (一)https://www.doczj.com/doc/2111332371.html,简介 https://www.doczj.com/doc/2111332371.html,是由微软Microsoft ActiveX Data Object(ADO)升级发展而来的。是在.NET中创建分布式数据共享程序的开发接口。https://www.doczj.com/doc/2111332371.html,的数据存取API提供两种数据访问方式,分别用来识别并处理两种类型的数据源,即SQL Server 7.0(及更高的版本)和可以通过OLE DB进行访问的其他数据源。为此ADO.NE T中包含了两个类库,System.Data.SQL库可以直接连接到SQL Server的数据,System.Data.ADO库可以用于其他通过OLE DB进行访问的数据源。如Acces s数据。 (二)https://www.doczj.com/doc/2111332371.html,的名称空间 https://www.doczj.com/doc/2111332371.html,是围绕System.Data基本名称空间设计,其他名称空间都是从Syste m.Data派生而来。它们使得https://www.doczj.com/doc/2111332371.html,不仅访问DataBase中的数据,而且可以访问支持OLE DB的数据源。 当我们讨论https://www.doczj.com/doc/2111332371.html,时,实际讨论的是System.Data和System.Data.OleDb 名称空间。这两个空间的所有类几乎都可以支持所有类型的数据源中的数据。这里我们讨论与后文实例有关的类。即OleDbconnection、OleDbDataAdapter、D ataSet和DataView。 上面列举的类中没有OleDb前缀的,派生自System.Data空间,有此前缀的派生自System.Data.OleDb空间。在使用中,如果要引用OleDb前缀的类,必须导入System.Data.OleDb名称空间。语法如下: Imports System.Data.OleDb 使用没有此前缀的类必须导入System.Data名称空间。语法如下: Imports System.Data

MYSQL数据库基本操作详细教程

MYSQL数据库 学习目标: ●掌握MYSQL基本知识 ●学习数据库管理和操作 ●掌握数据库设计方法 ●熟练运用SQL编程语言 基本概念 MYSQL数据库是关系型数据库。 关系型:使用一个关系,来表示实体信息和实体之间的联系。关系:就是二维表,有行有列的表格。 这两张表通过班级名称关联起来。 关系型数据库:就是由二维表及其之间的联系组成的数据组织。 同一个表中数据结构完全一致。 数据是由记录组成 记录是由字段组成。 SQL:结构化查询语言 专门用于处理关系型数据库编程语言。 PHP也是编程语言 变量,流程控制,函数

数据库服务器的结构 DBS = DBMS + DB 数据库系统= 数据库管理系统+ 数据库(数据) 命令行客户端

数据在服务器上是如何存储的? 操作服务器 通过服务管理来操作服务器 开始->运行-> 3306是MYSQL服务程序的默认端口号 可以用netstat –an命令查看服务是否启动

命令行命令控制服务器的启动和关闭 Net start mysql Net stop mysql 错误原因:没有权限 解决办法:用管理员方式启动命令行窗口 C/S, client / server客户端/服务器方式访问数据库命令行客户端工具

流程: 1.连接和认证,提供4个参数,分别是主机地址,端口号,用户名,密码 2.向MYSQL数据库服务器发送SQL 3.MYSQL服务器接收并执行SQL,并且把结果返回给客户端 4.客户端对结果进行显示 5.断开服务器连接。Exit, quit, \q 2,3,4这几步可以循环执行 知识: 非关系型数据库,NOSQL,not only sql 不仅仅是SQL 代表:redis, mongodb 数据存储有点象数组,key/value SQL语言 存储数据: 首先建立数据库 之后建立数据表(字段定义) 操作数据 数据有哪些操作 CURD CREATE UPDATE READ DELETE(DROP)

数据库系统基础教程课后答案第五章

Exercise 5.1.1 As a set: Average = 2.37 As a bag: Average = 2.48 Exercise 5.1.2 As a set:

Average = 218 As a bag: Average = 215 Exercise 5.1.3a As a set:

As a bag: Exercise 5.1.3b πbore(Ships Classes) Exercise 5.1.4a For bags: On the left-hand side: Given bags R and S where a tuple t appears n and m times respectively, the union of bags R and S will have tuple t appear n + m times. The further union of bag T with the tuple t appearing o times will have tuple t appear n + m + o times in the final result. On the right-hand side: Given bags S and T where a tuple t appears m and o times respectively, the union of bags R and S will have tuple t appear m + o times. The further union of bag R with the tuple t appearing n times will have tuple t appear m + o + n times in the final result. For sets: This is a similar case when dealing with bags except the tuple t can only appear at most once in each set. The tuple t only appears in the result if all the sets have the tuple t. Otherwise, the tuple t will not appear in the result. Since we cannot have duplicates, the result only has at most one copy of the tuple t. Exercise 5.1.4b For bags: On the left-hand side:

数据库基础教程课后习题答案顾韵华

习题1 1、简述数据库系统的特点。 答:数据库系统的特点有: 1)数据结构化 在数据库系统中,采用统一的数据模型,将整个组织的数据组织为一个整体;数据不再仅面向特定应用,而是面向全组织的;不仅数据内部是结构化的,而且整体是结构化的,能较好地反映现实世界中各实体间的联系。这种整体结构化有利于实现数据共享,保证数据和应用程序之间的独立性。 2)数据共享性高、冗余度低、易于扩充 数据库中的数据能够被多个用户、多个应用程序共享。数据库中相同的数据不会多次重复出现,数据冗余度降低,并可避免由于数据冗余度大而带来的数据冲突问题。同时,当应用需求发生改变或增加时,只需重新选择不同的子集,或增加数据即可满足。 3)数据独立性高 数据独立性是由DBMS 的二级映像功能来保证的。数据独立于应用程序,降低了应用程序的维护成本。 4)数据统一管理与控制 数据库中的数据由数据库管理系统(DBMS )统一管理与控制,应用程序对数据的访问均经由DBMS 。DBMS 提供四个方面的数据控制功能:并发访问控制、数据完整性、数据安全性保护、数据库恢复。 2、什么是数据库系统? 答:在计算机系统上引入数据库技术就构成一个数据库系统(DataBase System ,DBS )。数据库系统是指带有数据库并利用数据库技术进行数据管理的计算机系统。DBS 有两个基本要素:一是DBS 首先是一个计算机系统;二是该系统的目标是存储数据并支持用户查询和更新所需要的数据。 3、简述数据库系统的组成。 答:数据库系统一般由数据库、数据库管理系统(及其开发工具)、数据库管理员(DataBase Administrator ,DBA )和用户组成。 4、试述数据库系统的三级模式结构。这种结构的优点是什么? 答:数据库系统的三级模式结构是指数据库系统是由外模式、模式和内模式三级构成,同时包含了二级映像,即外模式/模式映像、模式/内模式映像,如下图所示。 数据库应用1…… 外模式A 外模式B 模式 应用2应用3应用4应用5…… 模式 外模式/模式映像 模式/内模式映像 数据库系统的这种结构具有以下优点: (1)保证数据独立性。将外模式与模式分开,保证了数据的逻辑独立性;将内模式与模式分开,保证了数据的物理独立性。 (2)有利于数据共享,减少了数据冗余。 (3)有利于数据的安全性。不同的用户在各自的外模式下根据要求操作数据,只能对

Oracle11g数据库基础教程-参考答案

Oracle11g数据库基础教程 参考答案

第1章Oracle 11g数据库安装与配置1.简答题 (1) 企业版数据库服务器包含所有的数据库组件,主要针对高端的应用环境,适用于安全性和性能要求较高的联机事务处理(OLTP)、查询密集型的数据仓库和要求较高的Internet应用程序:标准版数据库服务器提供大部分核心的数据库功能和特性,适合于工作组或部门级的应用程序:个人版数据库服务器只提供基本数据库管理功能和特性,适合单用户的开发环境,为用户提供开发测试平台。 (2) 常用数据库类型包括事务处理类、数据仓库类以通用类型。其中事务处理类型主要针对具有大量并发用户连接,并且用户主要执行简单事务处理的应用环境。事务处理数据库的典型应用有银行系统数据库、Internet电子商务数据库、证券交易系统数据库等。对于需要较高的可用性和事务处理性能、存在大量用户并行访问相同数据以及需要较高恢复性能的数据库环境,事务处理类型的配置可以提供最佳性能;数据仓库类型的数据库主要针对有大量的对某个主题进行复杂查询的应用环境。数据仓库的典型应用有客户订单研究、支持呼叫、销售预测、采购模式以及其他战略性业务问题的历史数据研究。对于需要对大量数据进行快速访问,以及复杂查询的数据库环境,数据仓库类型配置是最佳选择;通用类型配置的数据库是事务处理数据库与数据仓库配置的折衷方案。既可以支持大量并发用户的事务处理,又可以快速对大量历史数据进行复杂的数据扫描和处理。 (3) 数据库名可以由字母、数字、下划线(_)、#和美元符号($)组成,且必须以字母开头,长度不超过30个字符。在单机环境中,可以不设置域名,域名长度不能超过128个字符。Oracle服务标识符(SID)是一个Oracle实例的唯一名称标识,长度不能超过12个字符。(4) ● OracleServiceORCL:数据库服务(数据库实例),是Oracle核心服务,是数据库启 动的基础,只有该服务启动,Oracle数据库才能正常启动。(必须启动) ● OracleOraDb11g_home1TNSListener:监听器服务,该服务只有在远程访问数据库时 才需要(无论远程计算机还是本地计算机,凡是通过Oracle Net网络协议连接数据库都属于远程访问)。(必须启动) ● OracleOraDb11g_home1ConfigurationManager:配置Oracle启动时的参数的服务。(非 必须启动) ● OracleOraDb11g_home1ClrAgent:提供对.NET支持的Oracle数据库扩展服务。(非 必须启动) ● OracleJobSchedulerORCL:数据库作业调度服务。(非必须启动) ● OracleDBConsoleorcl:Oracle控制台服务,即企业管理器服务。只有该服务启动了, 才可以使用Web方式的企业管理器管理数据库。(非必须启动) ● OracleVssWriterORCL:是Oracle对VSS提供支持的服务。(非必须启动) ● OracleMTSRecoveryService:是允许数据库充当一个微软事务服务器、COM/COM+ 对象和分布式环境下的事务资源管理器的服务。

SQLServer2008数据库应用教程课后答案

第1章数据库基础 一、单项选择题 1.C 2.A 3.C 4.D 5.D 6.B 7.A 8.B 9.B 10.D 11.C 12.A 13.C 14.B 15.A 16.B 17.A 18.D 19.B 20.B 21.A; D 22.A 23.C 24.D 25.B 26.B 27.B 28.D 29.B 30.B 二、填空题 1.概念;数据 2.属性 3.码 4.一对一联系;一对多(或多对一)联系;多对多联系 5.候选码 6.候选码 7.关系名(属性1,属性2,…,属性n) 8.关系数据结构;关系操作集合;关系完整性约束 9.实体;参照;用户定义的;实体;参照 10.空植 11.需求分析阶段;概念结构设计阶段;逻辑结构设计阶段;物理结构设计阶段;数据库实施阶段;数据库运行和维护阶段 12.准确了解并分析用户对系统的要求,尤其是用户的信息要求、处理要求、安全性与完整性要求,确定所要开发的应用系统的目标,产生用户和设计者都能接受的需求说明书,做为下一步数据库概念结构设计的基础。 13.将需求分析得到的用户需求抽象为信息结构即概念模型。 14.将概念结构进一步转化为某一DBMS支持的数据模型,并对其进行优化。 15.为逻辑数据模型选取一个最适合应用环境的物理结构,包括数据库在物理设备上的存储结构和存取方法。 三、指出以下各缩写的英文意思和中文意思 1.DB:DataBase 2.DBMS:Database Management System 3.RDBMS: 4.DBS:DataBase System 5.DBA:Relational Database Management System 6.NF:Normal Form 7.DDL:Data Definition Language 四、按题目要求回答问题

数据库系统基础教程第四章答案

Solutions Chapter 4 4.1.1 4.1.2 a) b)

c) In c we assume that a phone and address can only belong to a single customer (1-m relationship represented by arrow into customer).

d) In d we assume that an address can only belong to one customer and a phone can exist at only one address. If the multiplicity of above relationships were m-to-n, the entity set becomes weak and the key ssNo of customers will be needed as part of the composite key of the entity set. In c&d, we convert attributes phones and addresses to entity sets. Since entity sets often become relations in relational design, we must consider more efficient alternatives. Instead of querying multiple tables where key values are duplicated, we can also modify attributes: (i) Phones attribute can be converted into HomePhone, OfficePhone and CellPhone. (ii) A multivalued attribute such as alias can be kept as an attribute where a single column can be used in relational design i.e. concatenate all values. SQL allows a query "like '%Junius%'" to search the multiple values in a column alias.

SQL Server数据库基础教程课后答案

1.SQL的特点是什么? (1)一体化的特点 (2)统一的语法结构,多种使用方式 (3)高度非过程化 (4)语言简洁 (5)客户机/服务器(Client/Server)结构 (6)支持异类复制 (7)Internet数据库功能的集成 2.关系数据库的主要模型有哪些? 关系模型:通过关系,按给定的选择条件,选出符合条件的元组,较灵活 层次模型:要查找一个记录必须从根记录开始,按给定条件沿一个层次路径进行查找网状模型:在查找语句中要说明查找的对象和存取的路径,操作较繁琐 3.简述文件和文件组的概念? 主要数据文件:该文件包含数据库的启动信息,并用于存储数据,扩展名是.mdf 文件组:为了方便数据的分配、放置和管理,SQL Server允许对文件进行分组处理。在同一个组里的文件组成文件组,然后,可以在文件组group上创建表。对表中 数据的查询将被分散到三个磁盘上,查询性能将得到提高 4.日志文件的作用是什么? 事务日志是数据库中已发生的所有修改和执行每次修改的事务的一连串记录。事务日志记录每个事务的开始。 这些文件包含用于恢复数据库的日志信息。每个数据库都必须至少有一个日志文件,扩展名是.ldf 5.数据库的表的作用是什么? 数据库—表—记录—字段—属性 6.数据库允许有哪些数据类型?它们的范围是多少?并说明含义?

整型数据类型: (1) bigint:占8字节的存储空间,存储数据范围为-263~263-1。 (2) int:占4字节的存储空间,存储数据范围为-231~231-1。 (3) smallint:占2字节的存储空间,存储数据范围为-215~215-1。 (4) tinyint:占1字节的存储空间,存储数据范围为0~255。 Unicode字符数据 使用Unicode数据类型,列可存储由Unicode标准定义的任何字符,包含由不同字符集定义的所有字符 nvarchar 列大小不固定<4000个字符数 nchar 列大小固定<4000个字符数 ntext >4000个字符数

数据库系统基础教程课后答案

Solutions Chapter 4

4.1.1 4.1.2 a) b)

In c we assume that a phone and address can only belong to a single customer (1-m relationship represented by arrow into customer).

In d we assume that an address can only belong to one customer and a phone can exist at only one address. If the multiplicity of above relationships were m-to-n, the entity set becomes weak and the key ssNo of customers will be needed as part of the composite key of the entity set. In c&d, we convert attributes phones and addresses to entity sets. Since entity sets often become relations in relational design, we must consider more efficient alternatives. Instead of querying multiple tables where key values are duplicated, we can also modify attributes: (i) Phones attribute can be converted into HomePhone, OfficePhone and CellPhone. (ii) A multivalued attribute such as alias can be kept as an attribute where a single column can be used in relational design i.e. concatenate all values. SQL allows a query "like '%Junius%'" to search the multiple values in a column alias.

数据库课后答案 第一章(数据库基础知识)

数据库课后答案第一章(数据库基础知识)

《数据库技术及应用基础教程》第一章参考答案 --责任人:崔朝霞 一、名词解释 关系数据库系统: 对应于一个关系模型的所有关系的集合称为关系数据库。关系数据库管理系统就是管理关系数据库,并将数据组织为相关的行和列的系统。 分布式数据库系统 分布式数据库系统有两种:一种是物理上分布的,但逻辑上却是集中的。这种分布式数据库只适宜用途比较单一的、不大的单位或部门。另一种分布式数据库系统在物理上和逻辑上都是分布的,也就是所谓联邦式分布数据库系统。由于组成联邦的各个子数据库系统是相对“自治”的,这种系统可以容纳多种不同用途的、差异较大的数据库,比较适宜于大范围内数据库的集成。多媒体数据库:能够管理数值、文字、表格、图形、图像、声音等多媒体的数据库称为多媒体数据库。 逻辑数据:逻辑数据是一种抽象的概念,是对客

三、1.√2.√3.√4.× 四、1. 数据库最初是在大公司或大机构中用作大规模事务处理的基础。后来随着个人计算机的普及,数据库技术被移植到PC机(Personal Computer,个人计算机)上,供单用户个人数据库应用。接着,由于PC机在工作组内连成网,数据库技术就移植到工作组级。现在,数据库正在Internet和内联网中广泛使用。 2. 数据库系统是一个实际可运行的存储、维护和应用系统提供数据的软件系统,是存储介质、处理对象和管理系统的集合体。它通常由软件、数据库和数据管理员组成。其软件主要包括操作系统、各种宿主语言、实用程序以及数据库管理系统。数据库由数据库管理系统统一管理,数据的插入、修改和检索均要通过数据库管理系统进行。数据管理员负责创建、监控和维护整个数据库,使数据能被任何有权使用的人有效使用。数据库管理员一般是由业务水平较高、资历较深的人员担任。 数据库系统的个体含义是指一个具体的数据库管理系统软件和用它建立起来的数据库;它的学科含义是指研究、开发、建立、维护和应用数据库系统所涉及的理论、方法、技术所构成的学科。在这一含义下,数据库系统是软件研究领域的一个重要分支,常称为数据库领域。 数据库研究跨越于计算机应用、系统软件和理论三个领域,其中应用促进新系统的研制开发,新系统带来新的理论研究,而理论研究又对前两个领域起着指导作用。数据库系统的出现是计算机应用的一个里程牌,它使得计算机应用从以科学计算为主转向以数据处理为主,并从而使计算机得以在各行各业乃至家庭普遍使用。在它之前的文件系统虽然也能处理持久数据,但是文件系统不提供对任意部分数据的快速访问,而这对数据量不断增大的应用来说是至关重要的。为了实现对任意部分数据的快速访问,就要研究许多优化技术。这些优化技术往往很复杂,是普通用户难以实现的,所以就由系统软件(数据库管理系统)来完成,而提供给用户的是简单易用的数据库语言。由于对数据库的操作都由数据库管理系统完成,所以数据库就可以独立于具体的应用程序而存在,从而数据库又可以为多个用户所共享。因此,数据的独立性和共享性是数据库系统的重要特征。数据共享节省了大量人力物力,为数据库系统的广泛应用奠定了基础。数据库系统的出现使得普通用户能够方便地将日常数据存入计算机并在需要的时候快速访问它们,从而使计算机走出科研机构进入各行各业、进入家庭。 3. Access、Sybase、SQL server、ORACLE、Foxpro等。 4. 从历史的发展来看,信息技术的快速发展、社会对信息需求的不断增强、信息资源的作用日益显现,是推动数据库技术发展的主要动力。从

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