当前位置:文档之家› 修复SQLSERVER2005 数据库一致性错误与分配错误

修复SQLSERVER2005 数据库一致性错误与分配错误

修复SQLSERVER2005 数据库一致性错误与分配错误
修复SQLSERVER2005 数据库一致性错误与分配错误

修复SQLSERVER 数据库一致性错误与分配错误来源:本站转载作者:佚名时间:2012-10-14 TAG:我要投稿

一、把数据库置为单用户模式:

sp_dboption '数据库名称', 'single user', 'true'

二、在允许数据丢失情况下修复数据库:

DBCC checkdb('数据库名称',REPAIR_ALLOW_DATA_LOSS)

如果执行一次不行,可以在多执行几次直到没有再提示数据库有错误为止。

三、把数据库重新设置为多用户模式:

sp_dboption '数据库名称', 'single user', 'false'

这样这个数据库的错误修复就完成了。然后停止掉SQLSERVER,重新启动服务器就可以。

这种方法对于一般出现问题可以不用安装企业管理器,直接在服务器用OSQL –E 进入数据库,然后通过上面两条命令来修复数据库。这样速度比较快!

其他人提供的方法:

一、DBCC CHECKDB :

在SQL查询分析器中执行以下SQL进行数据库的修复,修复数据库存在的一致性错误与分配错误。

use master

declare @databasename varchar(255)

set @databasename='需要修复的数据库名称'

exec sp_dboption @databasename, N'single', N'true'

dbcc checkdb(@databasename,REPAIR_ALLOW_DATA_LOSS)

dbcc checkdb(@databasename,REPAIR_REBUILD)

exec sp_dboption @databasename, N'single', N'false'

然后执行 DBCC CHECKDB('需要修复的数据库名称') 检查数据库是否仍旧存在错误。注意:修复后可能会造成部分数据的丢失。

2. DBCC CHECKTABLE

如果DBCC CHECKDB 检查仍旧存在错误,可以使用DBCC CHECKTABLE来修复。

use 需要修复的数据库实体的名称

declare @dbname varchar(255)

set @dbname='需要修复的数据库实体的名称'

exec sp_dboption @dbname,'single user','true'

dbcc checktable('需要修复的数据表的名称',REPAIR_ALLOW_DATA_LO SS)

dbcc checktable('需要修复的数据表的名称',REPAIR_REBUILD) exec sp_dboption @dbname,'single user','false'

SQL数据库置疑的解决方法

SQL2000数据库置疑的解决方法 首先,在任何操作之前,必须要备份数据库(重要) 一、分离数据库 1、点击“程序》Microsoft SQL Server》企业管理》”,打开企业管理器 2、展开服务器组,然后展开服务器,选中要分离的数据库 3、点击鼠标右键“所有任务》分离数据库”,出现如下窗口 4、点击确定,该选定的数据库就被分离。 5.分离后,把原数据库里面.MDF(主数据文件).LDF(事务日志文件)这两个文件复制到目标盘下,例:D盘下 注意事项,只有“使用本数据库的连接”数为0时,该数据库才能分离。所以分离数据库时尽量断开所有对要分离数据库操作的连接,如果还有连接数据库的程序,会出现数据库的连接状态窗口,显示正在连接此数据库的机器以及名称,点击清除按钮将从服务器强制断开现有的连接。

二、附加数据库 1、在附加数据库之前,首先要移动数据库文件 在附加数据库之前,您必须将与数据库关联的 .MDF(主数据文件).LDF(事务日志文件)这两个文件复制到目标硬盘下,或是同一服务器的不同硬盘目录下。这两个文件一般位于C:\Program Files\Microsoft SQL Server\MSSQL\Data 目录下。 2、点击“程序》Microsoft SQL Server》企业管理》”,打开企业管理器 3、展开服务器组,然后展开服务器 4、右击"数据库",然后选择“所有任务》附加数据库”,弹出窗口 5、输入要附加的数据库的MDF名称。如果不确定文件位于何处,单击浏览("...")搜索。若要确保指定的 MDF 文件正确,请单击"验证"。在"附加为"框内,输入数据库的名称。数据库名称不能与任何现有数据库名称相同。指定数据库的所有者 6、单击"确定"按钮。新附加的数据库的数据库节点即创建在"数据库"文件夹中

数据一致性检查

数据一致性检查  可能的数据错误形式    在DESIGN的管道和钢结构程序中,数据一致性检查功能从下列方面对你的设计进行 检查(以管道为例):  1. 角向对齐    2. 轴向对齐    3. 管径一致  4. 连接形式    5. 最小管段  Tube too short to allow for practical assembly

报告格式    报告具有一个表头,列出日期和时间,接着一个被检查的实体清单,后接编了号的诊断信息,以说明任何数据错误,例如:  DATE11 February 99 Time14、12  PIPE/PIPE2  BRAN/PIPE2/B1  BIO TAIL REFERENCE NOT SET  (管段尾部未定义连接)  END  如果没有问题,你会看到下列信息。  ***没有一致性错误***    诊断信息    你可以得到一个完整的数据一致性诊断信息表,每一项都标有一个参考号码。使用过几次后,你凭经验就可以分辨出哪些是要修改的错误,哪些仅仅是对某些可能会出的问题提出警告。  举个例子来说,我们对下面所示的设计模型(称为管道与管道的连接)进行检查,并   图示的连接是有效的,如果任一连接形式发生改变的话可能会显示下列信息:  A230连接形式HCONN与TCONN不一致。  在本例中连接形式FBD对FBD必须一样。  B230连接形式TCONN不一致。  本例中GBD对GBD连接形式必须一致。

D430,错误的进口连接形式。  本例中的GBD对FBD的连接形式必须列入在COCO匹配表中。  E730 出口连接形式(法兰)与TCONN不匹配。  本例中的FBD-GBD的连接形式必须是匹配的并被列入COCO表中。    诊断信息举例  下面是最常见的一些数据检查信息的解释。  1. A10 HEAD REFRENCE NOT SET  头部未定义连接  如果头部连接形式HCONN是设为OPEN、VENT、CLOS或DRAN的话,它的连接参考形式只能是“未设定”(也就是零)。    2. A30 BAD HEAD RETURN REFERENCE  头部连接错误  头部被连接到一个实体上,但是这个实体并没有指向这个管道分支,当一个管道分支被连接到另外一个分支上时会发生这种情况,表示在被连接的管道分支上的连接处应装一个三通。这个错误也会在当你不小心将两个或更多的管道连接到同一个接口上的时候产生。    3. A230,CONNECTION TYPE HCONN NOT SAME AS TERMINAL CONNECTION TYPE 如果头部是连接到一个管接口上,例如管嘴或三通,那么其连接形式必须永远与接口预定义点保持一致。    4. A300 REFERENCE HSTUBE UNSET  在头部与第一个管件(或尾部)之间存在一个长度大于1mm的管段,但是HSTUBE没有设置。    5. A400 HBORE NOT SAME AS BORE OF HSTUBE  头部管径与HSTUBE管径不一致。  头部的起始连接管段的管径必须永远与HBORE保持一致。    6. A410 HCON NOT COMPATIBALE WITH CONNECTION TYPE OF HSTUBE 头部起始管段的连接形式必须与HCONN匹配。    7. B10 TAIL REFERENCE NOT SET  尾部连接没有设置。  如果TCONN是设为OPEN,VENT,CLOS或DRAN的话,它的尾部连接只能是空(也就是零)。    8. C500 TUBE TOO SHORT BETWEEN HEAD AND TALL  头部位置HPOS与尾部位置TPOS之间的距离大于零但是小于规定的最小管段长度(缺省:100mm)    9. C510 BAD HEAD TO TAIL GEOMETRY

DBCC CHECKDB 数据库或表修复

DBCC CHECKDB 数据库或表修复 MS Sql Server 提供了很多数据库修复的命令,当数据库质疑或是有的无法完成读取时可以尝试这些修复命令。 1. DBCC CHECKDB 重启服务器后,在没有进行任何操作的情况下,在SQL查询分析器中执行以下SQL进行数据库的修复,修复数据库存在的一致性错误与分配错误。 use master declare @databasename varchar(255) set @databasename='需要修复的数据库实体的名称' exec sp_dboption @databasename, N'single', N'true' --将目标数据库置为单用户状态dbcc checkdb(@databasename,REPAIR_ALLOW_DATA_LOSS) dbcc checkdb(@databasename,REPAIR_REBUILD) exec sp_dboption @databasename, N'single', N'false'--将目标数据库置为多用户状态 然后执行DBCC CHECKDB('需要修复的数据库实体的名称') 检查数据库是否仍旧存在错误。注意:修复后可能会造成部分数据的丢失。 2. DBCC CHECKTABLE 如果DBCC CHECKDB 检查仍旧存在错误,可以使用DBCC CHECKTABLE来修复。 use 需要修复的数据库实体的名称 declare @dbname varchar(255) set @dbname='需要修复的数据库实体的名称' exec sp_dboption @dbname,'single user','true' dbcc checktable('需要修复的数据表的名称',REPAIR_ALLOW_DATA_LOSS) dbcc checktable('需要修复的数据表的名称',REPAIR_REBUILD) ------把’ 需要修复的数据表的名称’更改为执行DBCC CHECKDB时报错的数据表的名称exec sp_dboption @dbname,'single user','false'

数据库置疑_及修复

Sqlserver 数据库823错误(置疑)的解决方案 一、SQL-Server数据库置疑: 1、异常情况:服务器在正常运行的情况下突然断电,导致数据库文件损坏,具体表现是:数据库名后面有“(置疑)”字样。 2、异常分析:关于823错误的SQL-SERVER 中的帮助: ================================ 错误823 严重级别24 消息正文 在文件%4的偏移量,%3的索引,%2过程中,检测到I/O 错误%1。 解决办法: 准备工作: ①停止sql server服务,找到置疑库的mdf,ldf文件复制出来,这里假设叫kmcyV51_data.mdf(ldf),并与企业管理器中删除该数据库; ②用KM安装包下db_setup.exe建立一个空库(名称和质疑数据库名一致kmcyv51),选择服务器节点,右键停止数据库服务,把损坏的数据库文件kmcyv51_Data.mdf覆盖刚才新建数据库目录下,同时删除kmcy_v51_log.LDF文件;右键节点启动数据库服务,发现数据库名kmcyv51后面有“置疑”字样。 打开SQL自带查询分析器,在master数据库分别执行如下SQL语句: (注意更改数据库名) use master exec sp_configure 'allow updates',1 RECONFIGURE WITH OVERRIDE /* 打开修改系统表开关*/ update sysdatabases set status=32768 where name = 'kmcyv51' /* 设置紧急状态*/ sp_dboption 'kmcyv51', 'single user', 'true' /*启用单用户*/ DBCC REBUILD_LOG ('kmcyv51','E:\km软件_data\KmcyV51_Log.LDF') /* 重建LDF文件*/ update sysdatabases set status=28 where name= 'kmcyv51' /* 设置正常状态*/ --或者 update sysdatabases set status = 16 where name = 'kmcyv51' RESTORE DATABASE kmcyv51 WITH RECOVERY /* 恢复数据库*/ exec sp_configure 'allow updates',0 RECONFIGURE WITH OVERRIDE /* 关闭修改系统表开关*/ sp_dboption 'kmcyv51', 'single user', 'false' /* 关闭单用户模式*/ 如果问题依然存在,最笨的一个方法就是新建另一个数据库,把 原数据库各个表的数据导出到新建数据库表中。

数据库原理及应用教程第4版习题参考答案

习题参考答案 第1章习题参考答案 一、选择题 1. C 2. B 3. D 4. C 5. D 6. B 7. A 8. B 9. D 10. B 11. C 12. D 13. D 14. D 15. B 16. C 17. D 18. A 19. D 20. A 21. D 22. D 23. C 24. A 25. C 二、填空题 1. 数据库系统阶段 2. 关系 3. 物理独立性 4. 操作系统 5. 数据库管理系统(DBMS) 6. 一对多 7. 独立性 8. 完整性控制 9. 逻辑独立性 10. 关系模型 11. 概念结构(逻辑) 12. 树有向图二维表嵌套和递归 13. 宿主语言(或主语言) 14. 数据字典 15. 单用户结构主从式结构分布式结构客户/服务器结构浏览器/服务器结构 16. 现实世界信息世界计算机世界 三、简答题 1、简述数据库管理技术发展的三个阶段。各阶段的特点是什么? 答:数据库管理技术经历了人工管理阶段、文件系统阶段和数据库系统阶段。 (1)、人工管理数据的特点: A、数据不保存。 B、系统没有专用的软件对数据进行管理。 C、数据不共

享。D、数据不具有独立性。 (2)、文件系统阶段的特点: A、数据以文件的形式长期保存。 B、由文件系统管理数据。 C、程序与数据之间有一定的独立性。 D、文件的形式已经多样化 E、数据具有一定的共享性 (3)、数据库系统管理阶段特点: A、数据结构化。 B、数据共享性高、冗余度底。 C、数据独立性高。 D、有统一的数据控制功能。 2、从程序和数据之间的关系来分析文件系统和数据库系统之间的区别和联系 答:数据管理的规模日趋增大,数据量急剧增加,文件管理系统已不能适应要求,数据库管理技术为用户提供了更广泛的数据共享和更高的数据独立性,进一步减少了数据的余度,并为用户提供了方便的操作使用接口。数据库系统对数据的管理方式与文件管理系统不同,它把所有应用程序中使用的数据汇集起来,以记录为单位存储,在数据库管理系统的监督和管理下使用,因此数据库中的数据是集成的,每个用户享用其中的一部分。 3、简述数据库、数据库管理系统、数据库系统三个概念的含义和联系。答:数据库是指存储在计算机内、有组织的、可共享的数据集合。 数据库管理系统是软件系统的一个重要组成部分,它通过借助操作系统完成对硬件的访问,并对数据库的数据进行存取、维护和管理。 数据库系统是指计算机系统中引入数据库后的系统构成。它主要由数据库、数据库用户、计算机硬件系统和计算机软件系统几部分组成。 三者的联系是:数据库系统包括数据库和数据库管理系统。数据库系统主要通过数据库管理系统对数据库进行管理的。 4、数据库系统包括哪几个主要组成部分?各部分的功能是什么?画出整个数据库系统的层次结构图。 答:数据库系统包括:数据库、数据库用户、软件系统和硬件系统。 数据库主要是来保存数据的。 数据库用户是对数据库进行使用的人,主要对数据库进行存储、维护和检索等操作。 软件系统主要完成对数据库的资源管理、完成各种操作请求。 硬件系统主要完成数据库的一些物理上的操作,如物理存储、输入输出等。

基于Oracle的小型数据库应用系统设计实现

实验三设计开发小型网络数据库应用系统 一、实验目的 1、(可选)在实验一、二构建的环境下,选择并安装数据库设计CASE工具、 开发文档程序版本管理工具、可视化开发工具,配置其访问协议,用户 权限。 2、在上述环境下,自拟题目完成一个小型网络数据库应用系统的需求分析、 结构设计、编码实现,及调试运行。 二、实验原理、内容及步骤 1、自拟一个小型网络数据库应用系统的题目,完成该系统的设计与开发 2、完成系统设计说明书,包含“系统需求说明、系统E-R逻辑关系、系统物 理结构、系统功能设计。 3、依据上述设计文档,开发实现相应数据库应用系统,要求所开发应用软 件支持多文档界面,具备基本的数据增加、修改、删除、浏览、查询功 能。 三、实验过程及结果 3.1、设计题目 人事资源管理系统 3.2、需求分析 此次人事资源管理系统包括:系统配置信息管理、人脉信息管理、和人脉查询管理,其详细功能描述如下。 1、系统配置信息管理:包括地区信息、认识途径信息、职位信息和行业 信息,这些信息确定你的人脉资源的的简单而又关键的信息,而这些信息比较固定,在系统运行之前就能确定,可以把它作为系统配置信息来处理。 2、人脉信息管理:它提供了人脉信息的增加、删除、修改的功能人脉信 息包括:姓名、所在地、职位、行业、所在单位、认识途径、联系方式和爱好等。 3、人脉查询管理:是指对人脉信息的详细查询的功能,提供了多种查询 方式,包括所在地、认识途径、行业信息、职位信息的查询方式,翻遍用户

自己的人脉资源。 3.3、概要设计 3.3.1、系统功能模块设计: 图3-3-1 系统功能模块图 3.3.2、数据库表设计: 以下是所设计的5张表: 图3-3-2-1地区信息表 字段说明:地区ID,地区名称,例如右边的图。 图3-3-2-1认识途径信息表 字段说明:认识途径ID,认识途径名称,例如右边的图。 图3-3-2-1职位信息表 字段说明:职业ID,职业名称,例如右边的图。

SQL server 2008 数据库置疑的处理办法

SQL server 2008 数据库置疑的处理办法 1 把问题数据库备份后直接删除 停掉SQLSERVER服务,把服务器上出问题的数据库, 假设名称为ErrorDB的数据库文件及日志文件备份到其他目录,然后直接将其删除,把其数据库文件及日志文件也删除 2 新建同名数据库 启动SQLSERVER服务,新建同名数据库ErrorDB,文件目录和日志和原来一致 3 用备份的数据库文件替换新的数据库文件 停掉SQLSERVER服务,把备份的数据库文件替换新的数据库文件(只替换数据库文件,不替换日志文件) 启动SQLSERVER服务,打开数据库,这时数据库应该是不能访问的 -------------------设置应急模式、单用户模式、检查修复数据,取消单用户模式 ---------------------- 4 将数据库设置为应急状态 alter database ErrorDB set emergency 执行后,为了保险起见,重新停止、开启的SQLSERVER服务 再打开数据库,已经可以看到里面的内容了,如表,视图,存储过程等 数据库名称后有紧急标志,能看到数据库结构,但无法进行备份等操作 5 将数据库设置为单用户模式 ALTER DATABASE ErrorDB SET SINGLE_USER 6 对数据库进行检查修复 dbcc checkdb(EIMSDb,REPAIR_ALLOW_DATA_LOSS) dbcc checkdb(EIMSDb,REPAIR_REBUILD) 操作后,仍然停止启动SQLSERVER服务(不确定是否需要,我只是为了想无干扰查看执行后的数据库状况)重新打开数据库,已经是正常状态了,没有应急提示了 7 取消单用户模式 exec sp_dboption EIMSDb, N'single', N'false'

Sql Server实用操作-数据库一致性检测工具(DBCC)

在危急时刻,数据库一致性检测(DBCC)可能是你最重要的工具。本文向你简单介绍DBCC 的功能,它们包括: 检测表和相关目录的完整性。 检测整个数据库。 检测数据库页的完整性。 重建任何指定表中的目录。 你为何需要学习DBCC 如果你甚至还不知道为何使用DBCC,下面提供一些原因: 需要不断分割数据库页(表和目录),这可能会破坏分配。 目录可能遭到破坏,或效率降低。 SQL Server引擎有时会误解你的意图。 需要大量更新时,事情可能会很麻烦(记住,任何指定的更新实际为删除和插入)。 单个页面,虽然仍然“健康”,但可能会失去它们的最优存储足迹。 如何运行DBCC 你可以用两种方法运行DBCC:通过命令行窗口或查询分析器(Query Analyzer)窗口。如果你认为必要,你还可以确定其操作的时间。(我从未感到有必要这样做,因为在微软的所有产品中,我对SQL Server的稳定性最为自信。我认为它是雷蒙德推出的最佳产品。但是,感觉也可能出错。) DBCC命令包括以下扩展: CheckDB:检测整个数据库的一致性,是检查数据库破坏的基本方法。 CheckTable:检测特定表的问题。 CheckAlloc:检测数据库的单个页面,包括表和目录。 Reindex:重建某个特定表的目录。 CacheStats:说明当前存储在内存缓存中的对象。 DropCleanBuffers:释放当前存储在缓冲区中的所有数据,这样你就可以继续进行检测,而不必使用前面的结果。 Errorlog:删除(缩短)当前日志。你可以考虑确定包含这个命令的操作的时间,一个星期左右运行一次。 FlushProclnDB:清除特定数据库的存储过程缓存(使用它的数据库id而不是名称)。使用下列代码找出id: SELECT dbid FROM master.dbo.sysdatabases WHERE name = ' IndexDefrag:减少目录分裂,但不给文件加锁,以便用户能够继续应用数据库。CheckCatalog:检测特定数据库表及表之间的一致性(后者意味着使用外键等。) 如何使用这五个扩展 DBCC首先建立一个数据库快照(在某些情况下,如应用一个Master、TempDB或只读数据库时)。附带条件:要使用DBCC,数据库必须处于单用户模式。 使用DBCC CheckDB 此命令保证: 数据与目录页正确连接。 目录被正确分类,并保持最新。 指针一致。 每个页面的数据保持最新。

Oracle数据库管理与应用实例教程(刘志成)课后习题及答案

【填空题】 1.默认情况OEM的URL地址是https://sd04:1158/em(其中sd04为机器名) 2.Oracle9i发布于2001,i代表Internet,11G发布于2007,g代表grid(网格) 3.在oracle内存结构中,保存正在执行或可能执行的代码的区是代码区 4.在oracle进程结构中,用于实现进程监控功能的进程是PMON 1.Oracle数据库系统的物理存储结构主要由3类文件组成,分别为数据文件、重做日志文件、控制文件。 2.一个表空间物理上对应一个或多数据文件 3.在oracle的逻辑存储结构中,根据存储数据的类型,可以将段分成为数据段、索引段、回滚段、LOB段和临时段。 1.在设计表时,对于邮政编码最适合的数据类型是CHAR 2.在alter table语句中,如果要删除列,可以通过指定DROP COLUMN关键字来实现。 3.如果需要在表中插入一批已经存在的数据,可以在insert语句中使用SELECT语句。 4创建一个update语句来修改goods表中的数据,并且把每一行的t-id值都改成15,应该使用的SQL语句是UPDATE SCOTT.Goods SET t_ID=’15’ 5.使用DESC命令可以显示表的结构信息 6.两个表的主关键字和外关键字的数据应该对应一致,这是属于引用完整性,通常可以通过主键和外键来实现。 7.UNIQUE约束通过确保在列中不输入重复值保证一列或多列的实体完整性。 1.在select语句中选择满足条件的记录使用where关键字,分组之后进行选择使用having 关键字 2.用来返回特定字段中所有值得总和的聚合函数是SUM 3.编写查询语句时,使用%通配符可以匹配多个字符。 18.集合运算符UNION实现集合的并运算,操作符INTERSECT实现了对集合的交运算,而MINUS则实现了减运算 19.如果要定义只读的视图,可以在创建视图时使用READ ONLY关键字 20.删除视图的PL\SQL语句是DROP VIEW [用户方案.]视图名 21.在使用CREATE INDEX创建索引时,使用BITMAP关键字可以创建位图索引 22.聚集(Cluster)是存储表数据的可选择的方法。一个聚集是一组表,将具有同一公共列值的行存储在一起,并且它们经常一起使用,表中相关的列称为聚集键 23.在为表中某个列定义PRIMARY KEY约束PK_ID后,则系统默认创建的索引名为PK_ID 24.如果表中某列的基数比较低,则应该在该列上创建反向索引 25.如果要获知索引的使用情况,可以通过查询DBA_INDEXES视图,而要获知索引的当前状态,可以查询INDEX_STATS视图。 26. 在Oracle的PL/SQL程序中,除了可以使用Oracle规定的数据类型外,还可以使用%TYPE 类型的变量,由系统根据检索的数据表列的数据类型决定该变量的类型,也可以使用%ROWTYPE 类型的变量用来一次存储从数据表中检索的一行数据。 27. SYSDATE函数可以获得当前系统的日期,SUBSTR(s,start,len)函数可以实现从指定的字符串中取指定长度的字符串。 28. 用来变异存储过程的PL/SQL语句是ALTER PROCEDURE,CREATE FUNCTION语句可以用来创建函数。

SQL数据库置疑解决方案(原因分析、预防措施、修复方法)附图

SQL数据库置疑解决方案 一、数据库置疑产生的原因 1、SQL Server所在分区空间是否够? 数据库文件大小是否达到最大文件限制? FAT32的格式只支持4G以内的文件。 2、数据库文件损坏或被非正常删除时出现这种情况。 3、病毒防火墙的扫描也会引起数据库置疑。 4、当SQL Server启动时,将会尝试获得对数据库文件的排他访问权,如果此时该文件被其他程序占用,或者遗失,数据库将会被标记为置疑。 5、电脑非法关机也会造成数据库置疑。 6、电脑磁盘有坏道有可能造成数据库置疑。 二、数据库置疑的预防 1、数据库存放的盘符,空间是否够大,经常检查盘符的空间。 2、数据库存放的盘符的格式设置为NTFS格式。 3、进行病毒清除时,尽量把SQL服务停掉,再进行检查。 4、尽量减少非正常关机。 5、建议客户购买后备电源。 6、给客户实施软件之后一定要做好自动备份。 7、建议客户每隔一定时间手动备份一次。 三、数据库置疑的修复 1、正常的备份、SQL数据库恢复方式 正常方式下,我们要备份一个数据库,首先要先将该数据库从运行的数据服务器中断开,或者停掉整个数据库服务器,然后复制文件。 卸下数据库的命令:Sp_detach_db 数据库名 连接数据库的命令:Sp_attach_db或者sp_attach_single_file_db s_attach_db [@dbname =] ′dbname′, [@filename1 =] ′filename_n′[,...16] sp_attach_single_file_db [@dbname =] ′dbname′, [@physname =] ′physical_name′ 使用此方法可以正确恢复SQL Sever7.0和SQL Server 2000的数据库文件,要点是备份的时候一定要将mdf和ldf两个文件都备份下来,mdf文件是数据库数据文件,ldf是数据库日志文件。 例子: 假设数据库为pdm,其数据文件为pdm_data.mdf,日志文件为pdm_log.ldf。 下面我们讨论一下如何备份、恢复该数据库。 卸下数据库:sp_detach_db 'pdm' 连接数据库:sp_attach_db 'pdm','C:\Program Files\Microsoft SQL Server\MSSQL\Data\pdm_data.mdf','C:\Program Files\Microsoft SQL Server\MSSQL\Data\pdm_log.ldf'

数据库应用作业参考答案

读书破万卷下笔如有神 数据库应用作业参考答案 1.第1题 将多个查询结果返回一个结果集合的运算符是( )。 A.JOIN B.UNION C.INTO D.LIKE 您的答案:B 题目分数:3 此题得分:3.0 2.第2题 SELECT s_no=学号,s_name=姓名FROM information WHERE 班级名='软件021'表示( )。 A.查询INFORMATION表中'软件021'班学生的学号、姓名 B.查询INFORMATION表中'软件021'班学生的所有信息 C.查询INFORMATION表中学生的学号、姓名 D.查询INFORMATION表中计算机系学生的记录 您的答案:A 题目分数:3 此题得分:3.0 3.第3题 表达式STUFF(‘HOW ARE YOU',4,1,'OLD')的值是()。 A.'HOWARE YOU' B.'HOW OLD ARE YOU' C.'HOWOLDARE YOU' D.'HOW OLD RE YOU' 您的答案:B 题目分数:3 此题得分:3.0 4.第4题 命令SELECT s_no,A VG(grade) AS ‘平均成绩' FROM score GROUP BY s_no HA VING A VG(grade)>=85,表示( )。 A.查找score表中平均成绩在85分以上的学生的学号和平均成绩 B.查找平均成绩在85分以上的学生 C.查找score表中各科成绩在85分以上的学生

D.查找score表中各科成绩在85分以上的学生的学号和平均成绩 读书破万卷下笔如有神 您的答案:A 题目分数:3 此题得分:3.0 5.第5题 ( )是位于用户与操作系统之间的一层数据管理软件。 A.数据库管理系统 B.数据库系统 C.数据库 D.数据库应用系统 您的答案:A 题目分数:3 此题得分:3.0 6.第6题 将SQL Server 2000的数据库转换成ACCESS数据库,可以使用( )来实现。 A.订阅/发布 B.数据备份/恢复 C.数据分离/附加 D.DTS导入/导出 您的答案:D 题目分数:3 此题得分:3.0 7.第7题 索引项的顺序与表中记录的物理顺序一致的索引,称之为( )。 A.复合索引 B.唯一性索引 C.聚簇索引 D.非聚簇索引 您的答案:B 题目分数:3 此题得分:3.0 8.第8题 下列命令不属于DBMS的数据定义语言的是:( )。 A.CREATE B.DROP

第1章Oracle11g数据库系统

第1章Oracle 11g数据库系统 Oracle数据库系统是世界领先的数据库管理系统,Oracle数据库以其功能强大和配置灵活而著称,同时也因有一定的操作难度,让很多初学者望而却步。本书将由浅入深,以简单易懂的示例带领读者拨开Oracle的神秘面纱。 目前在Oracle世界主要有两类人员:一类是Oracle数据库管理人员,简称DBA;一类是Oracle开发人员。Oracle DBA主要的工作是负责日常的数据库维护和性能优化管理。由于Oracle系统较庞大、复杂,要成为一名合格的DBA,需要掌握的知识较多,比如要掌握Oracle体系结构和性能优化等方面的知识,相对其他数据库而言入门门槛较高,但是薪酬一般也较丰厚。Oracle开发人员的主要工作是使用Oracle提供的SQL语言和PL/SQL 结构化程序设计语言操作数据库,主要职责是操纵Oracle数据库对象,不需要对Oracle系统结构有深入了解,入门较容易。当Oracle开发人员积累了一定的开发知识后,可以通过学习Oracle DBA方面的知识向数据库管理员转型。 1.1 关系型数据库系统介绍 1970年6月,IBM公司的研究员E.F.Codd博士(中文名:埃德加·弗兰克·科德),发表了名为“大型共享数据库的关系模型”的论文,受到了学术界和产业界的高度重视和广泛响应,使得关系型数据库系统很快成为数据库市场的主流。E.F.Codd博士被誉为“关系数据库之父”,其照片如图1.1所示。 图1.1 关系数据库之父埃德加·弗兰克·科德

第1章 Oracle 11g 数据库系统 ·3· 1.1.1 什么是关系型数据模型 关系型数据库简而言之就是使用关系或二维表存储信息。以公司的人员信息管理为 例,为了存储公司内部的员工信息,人事部门一般会建一份列表,在公司未引入信息化管理系统时,大多数人事职员会使用Excel 来保存员工信息,例如图1.2是一份简单的人员信息列表的Excel 文件。 这种Excel 存储数据的方式,将人员的所有信息都包含在一张表中,随着Excel 中的 栏位和记录数越来越多,这份人员信息表会变得越来越繁杂,这种存储数据的方式称为平面文件数据模型。 为了简化修改与维护的复杂性,关系型数据库设计人员通过使用实体关系模型进行数 据库建模,例如人员信息表可以分为员工表和部门表,通过部门编号进行关联,ER 模型如图1.3所示。 图1.2 Excel 人员信息列表 图1.3 人员信息表ER 关系模型 由图1.3中可以看到,通过将员工和部门分别存储在不同的二维表格中,使用主键(PK )和外键(FK )进行关联,使得获取和维护数据变得更容易,这就是关系型数据模型。上述ER 图的3个关键组件分别如下所示。 ? 实体:需要了解的信息,比如部门和员工信息。 ? 属性:一般也称为列或字段,描述实体必须或可选的信息,比如员工表中的工号 和姓名等。 ? 关系:实体之间指定的关联,比如员工的部门编号关联到了部门表的编号属性。 关系型数据模型还涉及一些较复杂的组成元素,涉及较多的数学知识,有兴趣的读者 可以参考一些理论性的读物。 1.1.2 数据库系统范式 为了规范化关系型数据模型,关系型数据库系统在设计时必须遵循一定的规则,这种 规则称为关系型数据库系统范式。了解范式是每个数据库设计或开发人员必须具备的基本功,范式的主要目的是降低数据冗余,设计结构合理的数据库。目前较常用的范式有如下3种。

数据库试题

数据库试题 第八章 1,参照完整性要求有关联的两个或两个以上表之间数据的一致性。参照完整性可以通过建立( B )来实现。 A.主键约束和唯一约束 B. 主键约束和外键约束 C.唯一约束和外键约束 D. 以上都不是 2,域完整性用于保证给定字段中数据的有效性,它要求表中指定列的数据具有正确的数据类型、格式和有效的( A ) A.数据值 B. 数据长度 C. 取值范围 D. 以上都不是 3,以下关于规则的叙述中,不正确的是( C )。 A.规则是数据库中对存储在表的列或用户定义数据类型中的值的规定和限制。 B.规则是单独存储的独立的数据库对象。表或用户定义对象的删除、修改不会对与之相连的规则产生影响。 C.规则和约束不能同时使用 D.表的列可以有一个规则和多个约束 4,创建默认值用Transact-SQL语句( A ) A. CREATE DEFAULT B. DROP DEFAULT C. sp_bindefault D. sp_unbindefault 5,下列关于唯一性约束的叙述中,不正确的是( D ) A.唯一性约束指定一个或多个列的组合的值具有唯一性,以防止在列中输入重复的值B.唯一性约束指定的列可以有NULL属性 C.主键也强制执行唯一性,但主键不允许空值,故主键约束强度大于唯一性 D.主键列可以设定唯一性约束 二,填空 1,实体完整性又称为数据完整性,要求表中有一个主键。 2,创建规则和默认值对象的Transact-SQL语句分别为CREATE RULE和CREATE DEFAULT,而不能使用SQL Server管理平台工具创建。 3,如果要确保一个表中的非主键列不输入重复值,应在该列上定义唯一性约束。 4,在一个表中最多只能有一个关键字为主键的约束,关键字为FOREIGN KEY的约束可以出现多次。 5,CHECK约束被称为检查约束,UNIQUE约束被称为唯一性约束。 6,使用一种约束时,可以使用关键字constraint和标示符 constraint name 的选项命名该约束,也可以省略该选项由系统自动命名,因为用户很少再使用其约束名。 第九章 1,字符串连接运算符是( B ) A.- B. + C. & D. * 2,可以作为局部变量使用的标识符是( C ) A.[@Myvar] B. My var C. @Myvar D. @My var 3,表达式‘123’+‘456’的结果是( C ) A.‘579’ B. 579 C. ‘123456’ D. ‘123’ 4,表达式Datepart(yy,‘2004-3-13’)+2的结果是( D ) A.‘2004-3-15’ B. 2004

数据库考题及答案参考

一、填空和选择 1.数据库管理产生和发展的三个阶段Page: 6 人工管理阶段、文件系统阶段、数据库系统阶段 2.视图的概念page 118 视图是从一个或几个基本表(虚表),视图一经定义,就可以和基本表一样被查询,被删除,也可以在一个视图之上在定义新的视图,但对视图的更新操作则有一定的限制 3.关系模型的三类完整性约束page 30 实体完整性、参照完整性、和用户定义性的完整性 4.关系运算运算中的两种特殊符号%百分号,_ 下划线page 96 5.四类数据逻辑模型page 18 逻辑模型主要包括:层次模型/网状模型(格式化模型)、关系模型、面向对象模型、对象关系模型 6.关系模型的三个组成部分page 338 数据结构、关系操作、数据完整性 7.数据字典包含的五个组成部分page 207 数据项、数据结构、数据流、数据存储、处理过程5个部分;其中数据项是数据的最小组成单位,若干数据项可以组成一个数据结构,数据字典通过对数据项和数据结构的定义来描述数据流,数据存储的逻辑内容 8.两种数据操作类型page 12 概念模型一信息模型;(按用户的观点来对数据和信息建模,用于数据库设计) 逻辑模型(按计算机系统的观点对数据建模,主要用于DBMS的实现) 9.数据库系统和文化系统的区别page 7~9 数据库系统实现整体数据的结构化,这事数据库的主要特征之一,也是数据库系统与文件系统的本质区别 Page6的表也可以参照! 10.数据库设计过程的六个阶段(注意ER图转换)page 201 需求分析、概念结构设计、逻辑结构设计、物理结构设计、数据库实施、数据库运行和维护 11.关系模型的几个概念page 28 关系模型是目前最重要的一种数据模型。关系数据库系统采用关系模型作为数据组织方式 关系:relation 一个关系对应通常说的一张表 元组tuple: 表中的一行,即一个元组

sql数据库质疑的一般处理命令

寒山sql数据库修复中心https://www.doczj.com/doc/591251169.html,/ 设置数据库允许直接操作系统表。此操作可以在SQL Server Enterprise Manager里面选择数据库服 务器,按右键,选择"属性",在"服务器设置"页面中将"允许对系统目录直接修改"一项选中。也可以 使用如下语句来实现 */ use ais09 go sp_configure 'allow updates',1 go reconfigure with override go sp_dboption 'ais09','single user','true' go /*设置为紧急修复模式(操作数据库切记切换为master)1077936153/4194328(正常) -32768(只读\脱机\紧急模式) 32768(紧急模式)*/ /*select * from sysdatabases*/ update sysdatabases set status=-32768 where dbid=DB_ID('ais09') go /*执行真正的恢复操作,重建数据库日志文件*/ dbcc checkdb('ais09','REPAIR_REBUILD')/*REPAIR_ALLOW_DATA_LOSS | REPAIR_FAST | REPAIR_REBUILD */ go sp_dboption 'ais09','single user','false' go /*设置数据库为正常状态*/ sp_dboption 'ais09','dbo use only','false' go /*最后一步,我们要将步骤E中设置的"允许对系统目录直接修改"一项恢复。因为平时直接操作系统表 是一件比较危险的事情*/ sp_configure 'allow updates',0 go reconfigure with override go 二种模式: use ais19 exec sp_dboption ais19,'single user',true dbcc checkdb('ais19','repair_rebuild') exec sp_dboption ais19,'single user',false 三种模式: 1. DBCC CHECKDB 重启服务器后,在没有进行任何操作的情况下,在SQL查询分析器中执行以下SQL进

数据库原理及应用(第2版)习题参考答案..

第1章数据概述 一.选择题 1.下列关于数据库管理系统的说法,错误的是C A.数据库管理系统与操作系统有关,操作系统的类型决定了能够运行的数据库管理系统的类型 B.数据库管理系统对数据库文件的访问必须经过操作系统实现才能实现 C.数据库应用程序可以不经过数据库管理系统而直接读取数据库文件 D.数据库管理系统对用户隐藏了数据库文件的存放位置和文件名 2.下列关于用文件管理数据的说法,错误的是D A.用文件管理数据,难以提供应用程序对数据的独立性 B.当存储数据的文件名发生变化时,必须修改访问数据文件的应用程序 C.用文件存储数据的方式难以实现数据访问的安全控制 D.将相关的数据存储在一个文件中,有利于用户对数据进行分类,因此也可以加快用户操作数据的效率 3.下列说法中,不属于数据库管理系统特征的是C A.提供了应用程序和数据的独立性 B.所有的数据作为一个整体考虑,因此是相互关联的数据的集合 C.用户访问数据时,需要知道存储数据的文件的物理信息 D.能够保证数据库数据的可靠性,即使在存储数据的硬盘出现故障时,也能防止数据丢失 5.在数据库系统中,数据库管理系统和操作系统之间的关系是D A.相互调用 B.数据库管理系统调用操作系统 C.操作系统调用数据库管理系统 D.并发运行 6.数据库系统的物理独立性是指D A.不会因为数据的变化而影响应用程序 B.不会因为数据存储结构的变化而影响应用程序 C.不会因为数据存储策略的变化而影响数据的存储结构 D.不会因为数据逻辑结构的变化而影响应用程序 7.数据库管理系统是数据库系统的核心,它负责有效地组织、存储和管理数据,它位于用户和操作系统之间,属于A A.系统软件B.工具软件 C.应用软件D.数据软件 8.数据库系统是由若干部分组成的。下列不属于数据库系统组成部分的是B A.数据库B.操作系统 C.应用程序D.数据库管理系统 9.下列关于客户/服务器结构和文件服务器结构的描述,错误的是D A.客户/服务器结构将数据库存储在服务器端,文件服务器结构将数据存储在客户端 B.客户/服务器结构返回给客户端的是处理后的结果数据,文件服务器结构返回给客户端的是包含客户所需数据的文件 C.客户/服务器结构比文件服务器结构的网络开销小 D.客户/服务器结构可以提供数据共享功能,而用文件服务器结构存储的数据不能共享

金蝶SQL数据库置疑解决方法

解决由于sql2000日志文件引起的“置疑”。 日志有错误--------重新附加提示日志有错误。 日志文件丢失-----丢失了.ldf文件,只有.mdf文件的数据库重建。 步骤: 一、备份“置疑”数据库的数据文件,因为日志文件.ldf出错,可以只备份.mdf文件。 二、打开企业管理器(SQL Server Enterprise Manager),删除“置疑”数据库,如果提示删除错误,可以重启数据库服务器,然后再试。 三、在企业管理器中,新建同名数据库(假如数据库为test),注意建立的数据库名称,还有数据文件名要保持和原数据库一致。 四、停止数据库服务器。 五、将刚才新建数据库生成的数据库的日志文件test_log.ldf删除,用要恢复的数据库.mdf 文件覆盖刚才生成的数据库数据文件test_data.mdf。 六、启动数据库服务器。此时会看到数据库test的状态为“置疑”。这时候不能对此数据库进行任何操作。 七、设置数据库允许直接操作系统表。此操作可以在企业管理器 (SQL Server Enterprise Manager)里面选择数据库服务器,按右键,选择“属性”,在“服务器设置”页面中将“允许对系统目录直接修改”一项选中。也可以使用如下语句来实现。 use master go sp_configure 'allow updates',1 go reconfigure with override go 八、设置test为紧急修复模式。 update sysdatabases set status=-32768 where dbid=DB_ID('test') 此时可以在企业管理器(SQL Server Enterprise Manager)里面看到该数据库处于“只读\置疑\脱机\紧急模式”可以看到数据库里面的表,但是仅仅有系统表。 九、下面执行真正的恢复操作,用dbcc rebuild_log命令来重建数据库日志文件(重建路径根据你实际的数据库路径来)。

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