为什么SQLServer附加数据库附加不了,提示错误如下

为什么SQLServer附加数据库附加不了,提示错误如下,第1张

你是用较高版本的SQL SERVER中建的数据库,所以在较低版本的SQLSERVER数据库中不能附加。你可以在原来的数据库中导出该数据库的SQL,在目标数据库中运行建数据库结构,在原数据库中将数据备份成文件,然后在目标数据库中恢复备份。

这个原因是 *** 作系统拒绝访问错误(没有权限)两种方法1 你把需要附加的数据库 复制到你sql 安装所在磁盘的目录下就可以访问了(就是在点击附加数据库时默认打开的目录)一般是 Microsoft SQL Server\MSSQL1\MSSQL\Data 目录下2数据库要附加的数据库所在的磁盘 右键--》属性--》安全--》》添加一个名为 Everyone 的账户就行了

先把你的SQL停了,把备份的数据库文件覆盖以前的文件,再打开SQL,就OK了

MDF文件

附加数据库:企业管理器----右击一个SQL注册---所有任务---附加数据库

SQL文件

用查询分析器打开

或直接用记事本打开

第一步:先建立一个同名数据库,停止SQL SERVER2005,将原来的mdf数据库文件覆盖刚新建的mdf数据库文件,重新启动数据库

第二步:查询分析器执行,

1

2

3

4

5

6

7

alter database NEWDBNAME set emergency

declare @databasename varchar(255)

set @databasename='NEWDBNAME'

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'

第三步:以上代码请同时运行,可能会出现“数据库其他多个文件与数据库主文件不匹配”错误,请多次重试执行以上代码 。

遇到这种情况首先核对一下51aspx上源码所表明的开发环境(如 VS2005+Sql2005),如果是采用sqlServer2005的话你用Sql2000附加Sql2005的数据库就会出现这种错误(解决方法:改用SqlServer2005附加一下,如果还想用Sql2000格式那就用导出sql语句等方式进行转换)

转csdn sql专家邹建的解决办法

直接restore或附加应该是不行的, 用脚本+导数据肯定没有问题。

2005转到2000的步骤步骤

1 生成for 2000版本的数据库脚本

2005 的manger studio

-- 打开"对象资源管理器"(没有的话按F8), 连接到你的实例

-- 右键要转到2000的库

-- 任务

-- 生成脚本

-- 在"脚本向导"的"选择数据库"中, 确定选择的是要转到2000的库

-- 勾选"为所选数据库中的所有对象编写脚本"

-- 在接下来的"选择脚本选项"中, 找到"为服务器版本编写脚本"项, 选择"SQL Server 2000"

-- 其他选项根据需要设置

-- 最后把脚本保存到一个 sql 脚本文件

2 在2000中创建目标数据库

在查询分析器(或2005的manger studio在打开脚本文件), 连接到SQL Server 2000,执行上面生成的脚本以创建一个新的数据库

3 将数据从2005导到2000

2005 的manger studio

-- 打开"对象资源管理器"(没有的话按F8), 连接到你的实例

-- 右键要转到2000的库

-- 任务

-- 导出数据

-- 在"SQL Server 导入和导出向导"的"选择数据源"步骤中, 确定选择的是要导出的数据库

-- 在"选择目标"步骤中, 连接到 2000, 并选择步骤2新建的库

-- 在"选择源表和源视图"中, 选择所有的表

-- 最后完成

找到要添加数据库的mdf文件,点击右键,选择属性。

在属性页面点击安全,选择Authenticated Users,单击编辑

Authenticated Users权限中选择完全控制,点击确定,点击属性界面的确定。

同理,右键点击数据库的ldf文件,打开属性。按以上步骤再次设置即可。

完成以上步骤,再进行附加数据库,这时就可以。

前提条件:

附加数据库失败有很多原因(1NTFS分区内的文件权限2数据库文件完整性 等等)本文附加数据库失败是指在NTFS分区文件没有权限而无法附加成功,所以解决方法仅对此种情况。

本文以安装 SQL Server 2000 Sample Databases 说明:

1运行SQL Server 2000 Sample Databases 安装程序,运行后在你的硬盘上建立一个文件夹及几个文件:

C:\SQL Server 2000 Sample Databases

分别在4个数据库文件图标上单击右键,选择“属性”菜单->选择“安全”标签->选择“编辑”按钮。

选择组或用户名列表中选择Authenticated Users,在权限列表中选中完全控制。

选择"确定"按钮关闭对话框。

现在到sql server 200X中附加数据库就可成功附加了。如何附加数据库请参考sql server 200X中帮助文档这里不再赘述。

本文来自CSDN博客,转载请标明出处:>

以上就是关于为什么SQLServer附加数据库附加不了,提示错误如下全部的内容,包括:为什么SQLServer附加数据库附加不了,提示错误如下、SQL附加数据库报5120的错误,怎么回事哦、SQL server 2005附加数据库失败,错误5171 怎么回事啊等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9331389.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-27
下一篇 2023-04-27

发表评论

登录后才能评论

评论列表(0条)

保存