SQL数据附件失败。错误3456帮助。

方法1:

1.用相同的名字创建一个新的数据库(数据文件应该和原来的一致)。

2.再次停止sql server(注意不要分离数据库)。

3.用原始数据库的数据文件覆盖这个新数据库。

4.重新启动sql server。

5.这时候打开企业管理器就会有疑惑。无论如何,执行下面的语句(注意修改数据库名)。

6.完成后,一般可以访问数据库中的数据。这个时候数据库本身一般是有问题的。解决方案是使用

数据库脚本创建一个新的数据库并导入数据。

使用母版

SP_CONFIGURE '允许更新',1使用覆盖重新配置

更新sysdatabases set status = 32768,其中name = '有问题的数据库名'

Sp_dboption '可疑的数据库名称','单用户',' true '

DBCC CHECKDB(“可疑的数据库名”)

更新sysdatabases set status = 28,其中name = '有问题的数据库名'

sp_configure '允许更新',0使用替代重新配置

Sp_dboption '可疑的数据库名称','单用户',' false '

执行上述语句后,出现以下错误消息:

配置选项“允许更新”已从0更改为1。请运行RECONFIGURE语句进行安装。

(受影响的行数为1)

服务器:消息5105,级别16,状态4,行1。

设备激活错误。物理文件名“e:\ program files \ Microsoft SQL server \ MSSQL \ data \ bserp _ data . MDF”可能不正确。

sp_dboption命令失败。

服务器:消息8966,级别16,状态1,行1。

无法读取和锁定页面(97:6553715)(锁定类型为SH)。Sysobjects失败。

DBCC死刑执行完毕。如果DBCC输出错误消息,请联系系统管理员。

(受影响的行数为1)

配置选项“允许更新”已从1更改为0。请运行RECONFIGURE语句进行安装。

方法二:

首先,确定要附加的数据库是否真的是只读的,如果是,则删除只读属性。在要附加的数据库文件的安全设置中设置用户完全控制权限,设置成功后即可附加。