拷獯穑涸赟QL Server中,所有对数据库执行的更新 *** 作都会记录在数据库的事务日志文件中,除非将数据库设为可自动收缩的或手动 的对数据库进行了收缩,否则事务日志文件将一直增长,直到达到事先设定的日志文件增长上限或用尽所有可用的磁盘空间。如果当前的数据库文件或日志文件过大,可以使用以下两个命令对其进行收缩:DBCC SHRINKDATABASE:收缩指定数据库的所有数据和日志文件的大小DBCC SHRINKFILE: 收缩数据库的某个指定数据或日志文件的大小 这两个命令可以释放数据库中的空闲空间,并将数据库或指定的数据库文件收缩到指定的大小,但收缩后的数据文件或日志文件的大小不会小于档中现存的有效数据所占空间的大小。 关于这两个命令的具体使用方法,可以参考SQL Server 2000联机丛书中的相应主题。另外,也可在SQL Server企业管理器中执行数据库收缩,同样是调用的以上两个命令,效果类似。 在使用以上命令收缩日志文件的时候需要注意,已写入数据库但未被截断的事务日志记录是不会被收缩的,因为虽然这部分日志记录的信息已经写入数据库文件,但在使用事务日志备份进行数据库还原的时候,还将用到其中的信息。 对于使用简单恢复模型的数据库,事务日志会在每次处理检查点(CheckPoint)时自动被截断。对于使用完全恢复模型或大容量日志记录恢复模型的数据库,事务日志只有在执行日志备份(BACKUP LOG)时才会被截断,这时事务日志中记录的信息被写入事务日志备份文件,而它们所占用的这部分空间被标记为可用(即被截断)。 截断事务日志并不会使日志文件变小,但可以将其中的部分空间释放供以后写入新的日志记录使用。若要减少日志文件的物理大小,则要使用上面提到的DBCC SHRINKDATABASE和DBCC SHRINKFILE命令。 在执行BACKUP LOG语句的时候,还可以使用WITH NO_LOG(或WITH TRUNCATE_ONLY,含义相同)参数,这时并不真正备份事务日志,而只是截断事务日志中的非活动部分(这和普通的BACKUP LOG语句作用相同)。这适合于剩余磁盘空间不够进行事务日志备份或不打算保留事务日志中的非活动部分用于数据库恢复的情况。 为避免事务日志文件增长过快以致用尽所有磁盘空间的现象发生,一种办法是将数据库设为使用简单恢复模型,这样可以使SQL Server周期性的自动截断事务日志的非活动部分,并回收其占用的空间供以后写入事务日志记录使用。但这将使数据库无法利用事务日志备份还原到实时点,降低了数据库的可靠性,因此一般不应用于生产型数据库。 对于生产型数据库,推荐的做法是使用完全恢复模型,并定期进行数据库的完全备份和事务日志备份。例如每周执行一次完全备份,每天执行一次事务日志备份,这可以通过SQL Server企业管理器中的数据库维护计划向导很方便的实现(一般可以设为在每天夜里业务不繁忙的某个时刻自动执行备份)。 通过定期执行数据库的事务日志备份,可以避免日志文件的迅速增大,而使其保持一个比较稳定的大小。虽然数据库备份文件也会占用很多磁盘空间,但随时可以将这些文件移到其他磁盘上或在不需要它们的时候将其删除,而且可以在出现故障或误 *** 作的时候方便的进行数据库的还原。 由于数据文件的大小是随数据库中数据量的增长而增长的,数据库中已删除的数据所占的空间可以供新插入的资料使用;而在定期执行了事务日志的备份后,我们可以将日志文件的大小控制在一个比较合理的范围。因此,一般不需要对数据库进行收缩,也不推荐将数据库设为自动收缩模式。建议仅在以下情况下执行数据库的收缩:1、磁盘空间不足2、数据文件很大,但其中只包含较少量的数据(可能是以前有大量数据,但后来删除了很多),并且预期今后数据库中的数据量也不会很大。3、由于长期未进行事务日志备份,导致事务日志文件过大。减小事务日志文件大小的另一种方法是:首先在该数据库中执行CHECKPOINT命令,然后将该数据库分离(Detach),再将与其对应的数据库日志文件(ldf文件)改名或删除或移动到其他目录下,然后执行sp_attach_single_file_db存储过程或在企业管理器中重新将其附加(Attach)。由于找不到原来的日志文件,SQL Server将自动为该数据库建立一个大小只有504K的日志文件。但这种方法必须暂时将数据库脱机,因此一般不适宜在生产环境中使用。如果当前数据库的事务日志文件过大,必须对其进行收缩的话,建议参照以下步骤:1、建议首先备份数据库(但不是必需的):BACKUP DATABASE database_name TO backup_device
2、备份事务日志:BACKUP LOG database_name TO backup_device如果不需要当前事务日志中的记录进行数据库还原或没有足够的空间进行事务日志备份的的话,也可仅执行以下命令截断事务日志:BACKUP LOG database_name WITH NO_LOG
3、收缩日志文件:DBCC SHRINKFILE (log_file_name)其中log_file_name是事务日志文件的逻辑名称,可以在企业管理器中数据库属性的“事务日志”页中看到(如Northwind数据库的默认事务日志文件逻辑名称为Northwind_log)。4、如果日志文件仍然较大的话,可以尝试重复执行一次BACKUP LOG WITH NO_LOG和DBCC SHRINKFILE命令。5、如果这时仍没有明显的效果,请执行DBCC OPENTRAN (database_name)检查当前数据库中是否存在长时间未提交的活动事务。有必要的话,可以断开这些连接并重新尝试截断事务日志和收缩日志文件。6、日志文件收缩完成后,建议立即执行一次数据库的完全备份并根据实际需要制定适当的数据库备份计划。
数据库是在计算机存储设备上按一定方式,合理组织并存储的相互有关联的数据的集合,是计算机技术和信息检索技术相结合的产物,是电子信息资源的主体,是信息检索系统的核心部分之一。按所提供的信息内容,数据库主要可分为参考数据库和源数据库。1.参考数据库主要存储一系列描述性信息内容,指引用户到另一信息源以获得完整的原始信息的一类数据库,主要包括书目数据库和指南数据库。(1)书目数据库 存储描述如目录、题录、文摘等书目线索的数据库,又称二次文献信息数据库。如各种图书馆目录数据库、题录数据库和文摘数据库等属于此类,它的作用是为用户指出了获取原始信息的线索。图书馆目录数据库,又称机读目录,其数据内容详细,除描述标题、作者、出版项等书目信息外,还提供用户索取原始信息的馆藏信息。题录、文摘数据库描述的数据内容与印刷型的题录、文摘相似,它提供了论文信息或专利信息等确定的信息来源,供用户检索。(2)指南数据库 存储描述关于机构、人物、产品、活动等对象的数据库。与其它数据库相比,指南数据库为用户提供的不仅仅是有关信息,还包括各种类型的实体,多采用名称进行检索。如存储生产与经营活动信息的机构名录数据库、存储人物信息的人物传记数据库、存储产品或商品信息的产品指南数据库、存储基金信息的基金数据库等属于此类,它的作用指引用户从其它有关信息源获取更详细的信息。2.源数据库主要存储全文、数值、结构式等信息,能直接提供原始信息或具体数据,用户不必再转查其它信息源的数据库。它主要包括全文数据库和数值数据库。(1)全文数据库 存储原始信息全文或主要部分的一种源数据库。如期刊全文数据库、专利全文数据库、百科全书全文数据库,用户使用某一词汇或短语,便可直接检索出含有该词汇或短语的原始信息的全文。(2)数值数据库 存储以数值表示信息为主的一种源数据库,和它类似的有文本-数值数据库。与书目数据库比较,数值数据库是对信息进行深加工的产物,可以直接提供所需的数据信息。如各种统计数据库、科学技术数据库等。数值数据库除了一般的检索功能外,还具有准确数据运算功能、数据分析功能、图形处理功能及对检索输出的数据进行排序和重新组织等方面的功能。4.2.2 数据库结构1.书目数据库的结构书目数据库是以文档形式组织一系列数据,这些数据被称为记录,一个记录又包含若干字段。(1)记录与字段 记录是作为一个单位来处理有关数据的集合,是组成文档的基本数据单位。记录中所包含的若干字段,则是组成记录的基本数据单位。在书目数据库中,一个记录相当于一条题录或文摘,因此,一个记录通常由标题字段、作者字段、来源字段、文摘字段、主题词字段、分类号字段、语种字段等组成。在有些字段中,又包含多个子字段,子字段是字段的下级数据单位。如,主题词字段含有多个主题词。按照字段所代表记录的性质不同,字段通常分为基本字段和辅助字段两类。常见的字段名称及代码见表4-1。表4-1 字段名称及代码基本字段辅助字段字段名称字段代码字段名称字段代码标题TI记录号DN文摘AB作者AU叙词DE作者单位CS标识词ID期刊名称JN出版年PY出版国CO语种LA(2)文档 按一定结构组织的相关记录的集合。文档是书目数据库数据组织的基本形式,文档的组织方式与检索系统的硬件和软件功能密切相关。在书目数据库中,文档结构主要分为顺排文档和倒排文档。1)顺排文档 记录按顺序存放,记录之间的逻辑顺序与物理顺序是一致的,相当于印刷型工具中文摘的排列顺序,是一种线形文档。顺排文档是构成数据库的主体部分,但其主题词等特征的标识呈无序状态,直接检索时,必须以完整的记录作为检索单元,从头至尾查询,检索时间长,实用性较差。2)倒排文档 将顺排文档中各个记录中含有主题性质的字段(如主题词字段、标题字段、叙词字段等)和非主题性质字段(如作者字段、机构字段、来源字段等)分别提取出来,按某种顺序重新组织得到的一种文档。具有主题性质的倒排档,称基本索引档,非主题性质的倒排档,称辅助索引档。综上所述,顺排档和倒排档的主要区别是:顺排档以完整的记录为处理和检索单元,是主文档,倒排档以记录中的字段为处理和检索单元,是索引文档。计算机进行检索时,先进入倒排档查找有关信息的存取号,然后再进入顺排档按存取号查找记录。2全文数据库的结构一般的全文数据库结构与书目数据库相似,全文数据库的一个记录就是一个全文文本,记录分成若干字段。其主文档是以顺排形式组织的文本文档,倒排档是对应于记录可检字段的索引文档。3数值数据库的结构数值数据库的结构要综合考虑数据库的内容及检索目的,即,在内容上,数值数据库的主要内容是数值信息,但不排除含有必要的说明性的文本信息,在检索上,便于单项检索和综合检索,还能对数值进行准确数据运算、数据分析、图形处理及对检索输出的数据进行排序和重新组织。数值数据库的数据结构可以是单元式,也可以是表册形式。前者是对原始数据的模拟,后者则是对统计表格的机读模拟。数值数据库通常有多种文档,如顺排挡、倒排挡、索引文档等。顺排挡是由数值数据组成,为主文档,另有相应的索引文档,为便于存取,索引文档采用基本直接存取结构的组织形式。倒排挡也有相应的索引文档,索引文档采取分级组织形式。数值数据库的文档结构,使所有文档都可以用于检索,所有数据都可用来运算,构成了数值数据库的特点。4.指南数据库的结构指南数据库的结构兼有书目数据库、全文数据库和数值数据库的特点,有顺排档、倒排档、索引文档和数据字典。一般而言,对涉及主题领域较多,内容综合性较强的大型指南数据库,顺排挡(主文档)可采用多子文档的结构,对单一主题领域和内容较专的,则采用单一主文档和不定长、多字段的记录格式为宜。
数据库的概念
什么是数据库呢当人们从不同的角度来描述这一概念时就有不同的定义(当然是描述性的)。例如,称数据库是一个"记录保存系统"(该定义强调了数据库是若干记录的集合)。又如称数据库是"人们为解决特定的任务,以一定的组织方式存储在一起的相关的数据的集合"(该定义侧重于数据的组织)。更有甚者称数据库是"一个数据仓库"。当然,这种说法虽然形象,但并不严谨。严格地说,数据库是"按照数据结构来组织、存储和管理数据的仓库"。在经济管理的日常工作中,常常需要把某些相关的数据放进这样"仓库",并根据管理的需要进行相应的处理。例如,企业或事业单位的人事部门常常要把本单位职工的基本情况(职工号、姓名、年龄、性别、籍贯、工资、简历等)存放在表2063中,这张表就可以看成是一个数据库。有了这个"数据仓库"我们就可以根据需要随时查询某职工的基本情况,也可以查询工资在某个范围内的职工人数等等。这些工作如果都能在计算机上自动进行,那我们的人事管理就可以达到极高的水平。此外,在财务管理、仓库管理、生产管理中也需要建立众多的这种"数据库",使其可以利用计算机实现财务、仓库、生产的自动化管理。
JMartin给数据库下了一个比较完整的定义:数据库是存储在一起的相关数据的集合,这些数据是结构化的,无有害的或不必要的冗余,并为多种应用服务;数据的存储独立于使用它的程序;对数据库插入新数据,修改和检索原有数据均能按一种公用的和可控制的方式进行。当某个系统中存在结构上完全分开的若干个数据库时,则该系统包含一个"数据库集合"。
数据库的优点
使用数据库可以带来许多好处:如减少了数据的冗余度,从而大大地节省了数据的存储空间;实现数据资源的充分共享等等。此外,数据库技术还为用户提供了非常简便的使用手段使用户易于编写有关数据库应用程序。特别是近年来推出的微型计算机关系数据库管理系统dBASELL, *** 作直观,使用灵活,编程方便,环境适应广泛(一般的十六位机,如IBM/PC/XT,国产长城0520等均可运行种软件),数据处理能力极强。数据库在我国正得到愈来愈广泛的应用,必将成为经济管理的有力工具。
数据库是通过数据库管理系统(DBMS-DATA BASE MANAGEMENT SYSTEM)软件来实现数据的存储、管理与使用的dBASELL就是一种数据库管理系统软件。
数据库结构与数据库种类
数据库通常分为层次式数据库、网络式数据库和关系式数据库三种。而不同的数据库是按不同的数据结构来联系和组织的。
1数据结构模型
(1)数据结构
所谓数据结构是指数据的组织形式或数据之间的联系。如果用D表示数据,用R表示数据对象之间存在的关系集合,则将DS=(D,R)称为数据结构。例如,设有一个电话号码簿,它记录了n个人的名字和相应的电话号码。为了方便地查找某人的电话号码,将人名和号码按字典顺序排列,并在名字的后面跟随着对应的电话号码。这样,若要查找某人的电话号码(假定他的名字的第一个字母是Y),那么只须查找以Y开头的那些名字就可以了。该例中,数据的集合D就是人名和电话号码,它们之间的联系R就是按字典顺序的排列,其相应的数据结构就是DS=(D,R),即一个数组。
(2)数据结构种类
数据结构又分为数据的逻辑结构和数据的物理结构。数据的逻辑结构是从逻辑的角度(即数据间的联系和组织方式)来观察数据,分析数据,与数据的存储位置无关。数据的物理结构是指数据在计算机中存放的结构,即数据的逻辑结构在计算机中的实现形式,所以物理结构也被称为存储结构。本节只研究数据的逻辑结构,并将反映和实现数据联系的方法称为数据模型。
目前,比较流行的数据模型有三种,即按图论理论建立的层次结构模型和网状结构模型以及按关系理论建立的关系结构模型。
2层次、网状和关系数据库系统
(1)层次结构模型
层次结构模型实质上是一种有根结点的定向有序树(在数学中"树"被定义为一个无回的连通图)。例如图2064是一个高等学校的组织结构图。这个组织结构图像一棵树,校部就是树根(称为根结点),各系、专业、教师、学生等为枝点(称为结点),树根与枝点之间的联系称为边,树根与边之比为1:N,即树根只有一个,树枝有N个。这种数据结构模型的一般结构见图2065所示。
图2064 高等学校的组织结构图 图2065 层次结构模型
图2065中,Ri(i=1,2,…6)代表记录(即数据的集合),其中R1就是根结点(如果Ri看成是一个家族,则R1就是祖先,它是R2、R3、R4的双亲,而R2、R3、R4互为兄弟),R5、R6也是兄弟,且其双亲为R3。R2、R4、R5、R6又被称为叶结点(即无子女的结点)。这样,Ri(i=1,2,…6)就组成了以R1为树根的一棵树,这就是一个层次数据结构模型。
按照层次模型建立的数据库系统称为层次模型数据库系统。IMS(Information Manage-mentSystem)是其典型代表。
(2)网状结构模型
在图2066中,给出了某医院医生、病房和病人之间的联系。即每个医生负责治疗三个病人,每个病房可住一到四个病人。如果将医生看成是一个数据集合,病人和病房分别是另外两个数据集合,那么医生、病人和病房的比例关系就是M:N:P(即M个医生,N个病人,P间病房)。这种数据结构就是网状数据结构,它的一般结构模型如图2067所示。在图中,记录Ri(i=1,2,8)满足以下条件:
①可以有一个以上的结点无双亲(如R1、R2、R3)。
②至少有一个结点有多于一个以上的双亲。在"医生、病人、病房"例中,"医生集合有若干个结点(M个医生结点)无"双亲",而"病房"集合有P个结点(即病房),并有一个以上的"双亲"(即病人)。
图2066 医生、病房和病人之间的关系
图2067 网状结构模型
按照网状数据结构建立的数据库系统称为网状数据库系统,其典型代表是DBTG(Data Base Task Group)。用数学方法可将网状数据结构转化为层次数据结构。
(3)关系结构模型
关系式数据结构把一些复杂的数据结构归结为简单的二元关系(即二维表格形式)。例如某单位的职工关系就是一个二元关系(见表2068)。这个四行六列的表格的每一列称为一个字段(即属性),字段名相当于标题栏中的标题(属性名称);表的每一行是包含了六个属性(工号、姓名、年龄、性别、职务、工资)的一个六元组,即一个人的记录。这个表格清晰地反映出该单位职工的基本情况。
表2068 职工基本情况
通常一个m行、n列的二维表格的结构如表2069所示。
表中每一行表示一个记录值,每一列表示一个属性(即字段或数据项)。该表一共有m个记录。每个记录包含n个属性。
作为一个关系的二维表,必须满足以下条件:
(1)表中每一列必须是基本数据项(即不可再分解)。
(2)表中每一列必须具有相同的数据类型(例如字符型或数值型)。
(3)表中每一列的名字必须是唯一的。
(4)表中不应有内容完全相同的行。
(5)行的顺序与列的顺序不影响表格中所表示的信息的含义。
由关系数据结构组成的数据库系统被称为关系数据库系统。
在关系数据库中,对数据的 *** 作几乎全部建立在一个或多个关系表格上,通过对这些关系表格的分类、合并、连接或选取等运算来实现数据的管理。dBASEII就是这类数据库管理系统的典型代表。对于一个实际的应用问题(如人事管理问题),有时需要多个关系才能实现。用dBASEII建立起来的一个关系称为一个数据库(或称数据库文件),而把对应多个关系建立起来的多个数据库称为数据库系统。dBASEII的另一个重要功能是通过建立命令文件来实现对数据库的使用和管理,对于一个数据库系统相应的命令序列文件,称为该数据库的应用系统。因此,可以概括地说,一个关系称为一个数据库,若干个数据库可以构成一个数据库系统。数据库系统可以派生出各种不同类型的辅助文件和建立它的应用系统。
数据库的要求与特性
为了使各种类型的数据库系统能够充分发挥它们的优越性,必须对数据库管理系统的使用提出一些明确的要求。
1建立数据库文件的要求
(1)尽量减少数据的重复,使数据具有最小的冗余度。计算机早期应用中的文件管理系统,由于数据文件是用户各自建立的,几个用户即使有许多相同的数据也得放在各自的文件中,因而造成存储的数据大量重复,浪费存储空间。数据库技术正是为了克服这一缺点而出现的,所以在组织数据的存储时应避免出现冗余。
(2)提高数据的利用率,使众多用户都能共享数据资源。
(3)注意保持数据的完整性。这对某些需要历史数据来进行预测、决策的部门(如统计局、银行等)特别重要。
(4)注意同一数据描述方法的一致性,使数据 *** 作不致发生混乱。如一个人的学历在人事档案中是大学毕业,而在科技档案中却是大学程度,这样就容易造成混乱。
(5)对于某些需要保密的数据,必须增设保密措施。
(6)数据的查找率高,根据需要数据应能被及时维护。
2数据库文件的特征
无论使用哪一种数据库管理系统,由它们所建立的数据库文件都可以看成是具有相同性质的记录的集合,因而这些数据库文件都有相同的特性:
(1)文件的记录格式相同,长度相等。
(2)不同的行是不同的记录,因而具有不同的内容。
(3)不同的列表示不同的字段名,同一列中的数据的性质(属性)相同。
(4)每一行各列的内容是不能分割的,但行的顺序和列的顺序不影响文件内容的表达。
3文件的分类
对文件引用最多的是主文件和事物文件。其他的文件分类还包括表文件、备份文件、档案的输出文件等。下面将讲述这些文件。
(1)主文件。主文件是某特定应用领域的永久性的数据资源。主文件包含那些被定期存取以提供信息和经常更新以反映最新状态的记录。典型的主文件有库存文件、职工主文件和收帐主文件等。
(2)事务文件。事务文件包含着作为一个信息系统的数据活动(事务)的那些记录。这些事务被分批以构成事务文件。例如,从每周工资卡上录制下来的数分批存放在一个事务文件上,然后对照工资清单文件进行处理以便打印出工资支票和工资记录簿。
(3)表文件。表文件是一些表格。之所以单独建立表文件而不把表设计在程序中是为了便于修改。例如,一个公用事业公司的税率表或国内税务局的税率就可以存储在表中文件。
(4)备用文件。备用文件是现有生产性文件的一个复制品。一旦生产性文件受到破坏,利用备用文件就可以重新建立生产性文件。
(5)档案文件。档案文件不是提供当前处理使用的,而是保存起来作为历史参照的。例如,国内税务局(IRS)可能要求检查某个人最近15年的历史。实际上,档案文件恰恰是在给定时间内工作的一个"快照"。
(6)输出文件。输出文件包含将要打印在打印机上的、显在屏幕上的或者绘制在绘图仪上的那些信息的数值映象。输出文件可以是"假脱机的"(存储在辅存设备上),当输出设备可
用时才进行实际的输出。
以上就是关于c# 我是想判断数据库某字段值是1或0,并且输出相应的消息框来提示。不过一直出错。望高手解决全部的内容,包括:c# 我是想判断数据库某字段值是1或0,并且输出相应的消息框来提示。不过一直出错。望高手解决、求图书馆管理系统论文!!!!!!!、SQL Server 2000数据库的事务日志文件过大,如何将其缩小等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)