我先装的sql2000,然后在装的sql2008。两者共存
现在我在sql2008内用代码:exec sp_attach_db 'jctw','E:\data\jctw.mdf','E:\data\jctw_log.LDF'
附加数据库提示错误:
未能打开新数据库 'jctw'。CREATE DATABASE 将终止。
消息 602,级别 21,状态 50,第 1 行
未能在 sysindexes 中找到数据库 ID 10 中对象 ID 1 的索引 ID 1 对应的行。请对 sysindexes 运行 DBCC CHECKTABLE。
消息 602,级别 21,状态 50,第 1 行
Could not find row in sysindexes for database ID 10, object ID 1, index ID 1. Run DBCC CHECKTABLE on sysindexes.
你确认一下SQL Server 2008企业管理员连接的是SQL Server 2000的实例还是SQL Server 2008的实例?
我到现在我都不知道我连的是哪个? 好像sql2008 那个实例名我连接不上。。。。
@ASP。NET_新手: 那现在问题的原因就是:你在将SQL Server 2008的数据库文件附加到SQL Server 2000的实例上。
@dudu: 可是我用sql2000 附加也是这个错误
@ASP。NET_新手: 用Google搜索一下“Could not find row in sysindexes for database ID”
@dudu: 没找到想要的答案
没猜错的话,你在2008里附加的是2000的数据库,这样不行。你可以用2000备份,用2008恢复,同样可以达到目的。
如果你2008的数据库要附加到2000上去,需要修改数据库的兼容级别为“Sql server(80)”,低版本到高版本一般是兼容的,查看数据库版本可以用SQL语句:“select @@VERSION”
Microsoft SQL Server 2000 - 8.00.194 (Intel X86) Aug 6 2000 00:57:48 Copyright (c) 1988-2000 Microsoft Corporation Personal Edition on Windows NT 5.1 (Build 2600: Service Pack 3)
现在我有sql2005的数据库
我现在想附加数据库应该如何做?
@ASP。NET_新手: 假设 A=>B 停止A的相关服务,复制相关文件到B,附加