欢迎来到天天文库
浏览记录
ID:11882611
大小:335.50 KB
页数:8页
时间:2018-07-14
《第3章 数据库创建与管理》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、《网络数据库》教程第3章数据库创建与管理第3章数据库创建与管理在客户机/服务器数据库系统中,有两个主要的组成部分,这就是程序和数据库结构。程序是为基于客户机的用户访问数据库提供一个用户界面,而数据库结构是用来管理和存储服务器上的数据。数据库主要是存储了数据的表的集合以及其他的数据库对象。SQLServer可以同时支持许多数据库,每一个数据库既可以存储与另一个数据库相关的数据,也可以存储不相关的数据。第一节SQLServer数据库基本知识一、数据库对象SQLServer2000数据库中的数据在逻辑上被组织成一系列对象,当一个用户连接到数据库后,他所看到的是这些逻辑对象,而不是物理的数据库文件
2、。SQLServer2000中有以下数据库对象:关系图、表、视图、存储过程、规则、默认、用户自定义的数据类型、用户自定义函数等,如图3-1所示。图3-1数据库对象二、标识符命名规则1.第一个字符必须是大小写字母,以及来自其他语言的字母字符,也可以是汉字、下划线(_)、at符号(@)或数字符号(#)。2.后续字符可以是字母、基本拉丁字母、十进制数字、at符号(@)、美元符号($)、数字符号(#)或下划线(_)。8《网络数据库》教程第3章数据库创建与管理3.标识符不能是T-SQL语句的保留字。4.不允许嵌入空格或其他特殊字符。三、数据库结构1.数据库文件SQLServer2000用文件来存放数
3、据库,数据库中的所有数据和对象,例如表、触发器和视图,都存储在下面这些操作系统文件中,数据库文件有三类。⑴主数据文件(Primary):用来存放数据,该文件是数据库的起点,每个数据库都必须有并且只有一个主数据文件。⑵其他数据文件(Secondary):也用来存放数据,这些次数据文件是可选的,它们可以存储那些不在主数据文件中的全部数据和对象。一个数据库可以没有也可以有多个Secondary文件。⑶事务日志文件(TransactionLog):存放事务日志,这些日志文件保存了用于恢复数据库的全部事务日志信息。每个数据库都必须有一个或多个日志文件。一般情况下,一个简单的数据库可以只有一个主数据文
4、件和一个日志文件。如果数据库很大,则可以设置多个Secondary文件和日志文件,并将它们放在不同的磁盘上。默认情况下,数据库文件存放在MSSQLDATA目录下,数据文件名为“数据库名_Data.MDF”,日志文件名为“数据库名_Log.LDF”。数据库的创建者可以在创建时指定其他的路径和文件名,也可以添加Secondary文件和更多的日志文件。2.数据库文件组文件组就是文件的集合。为了管理和数据分配的方便,文件组允许多个数据库文件组成一个组,对它们整体进行管理。比如,可以将三个数据文件(data1.mdf、data2.mdf和data3.mdf)分别创建在三个盘上,这三个文件组成文
5、件组fgroup1,在创建表的时候就可以指定一个表创建在文件组fgroup1上。这样该表的数据就可以分布在三个盘上,在对该表执行查询时,可以并行操作,大大提高了查询效果。3.文件和文件组规则SQLServer的数据库文件和文件组必须遵循以下规则:l一个文件或文件组只能被一个数据库使用,不能用于多个数据库;l一个文件只能属于一个文件组;l一个数据库的数据信息和日志信息不能放在同一个文件或者文件组中,数据文件和日志文件总是分开的。l日志文件永远也不能是任何文件组的一部分,日志文件总是分开的。8《网络数据库》教程第3章数据库创建与管理4.数据库空间管理SQLServer可管理的最小空间是以页为单
6、位的,每一页的大小是8KB,即8192字节。在表中,每一行数据不能跨页存储。这样,表中每一行的字节数不能超过8192个字节。每8个连续页称为一个簇,即簇的大小是64KB。每个表或者索引最少要占一个簇的空间,也就是说每一个表或者索引最小也是64KB。四、事务日志每个数据库都有一个相关的事务日志,事务日志记录了SQLServer所有的事务和由这些事务引起的数据库的变化,即事务日志记录了对数据库的所有修改操作。在数据库中数据的任何改变写到磁盘之前,这个改变首先在事务日志中做了记录。事务日志记录了每一个事务的开始、对数据的改变和取消修改的足够信息,随着对数据库的操作,日志是连续增加的。SQLSer
7、ver使用数据库的事务日志来恢复事务。所以事务日志可以具有以下三个作用。1.恢复单个事务当执行RELLBACK语句,或SQLServer发现错误时,回滚未完成的事务所做的修改。2.在SQLServer启动时恢复所有未完成的事务当SQLServer出错停机时,事务的改变可能一部分被写入数据库文件,而另一部分还没有被写入,这样就造成了数据库中数据的不一致。事务日志可以使在SQLServer重新启动时回滚所有未完成的事务,以保
此文档下载收益归作者所有