为什么这个数据库附加不上! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 exec sp_attach_db 'bbs','D:\SQL-TEMP\bbsDB_log.ldf','D:\SQL-TEMP\bbsDB_data.mdf' 服务器: 消息 602,级别 21,状态 50,行 1未能在 sysindexes 中找到数据库 ID 11 中对象 ID 1 的索引 ID 1 对应的行。请对 sysindexes 运行 DBCC CHECKTABLE。连接中断 EXEC sp_attach_db @dbname = N'bbs', @filename1 = N'D:\SQL-TEMP\bbsDB_log.ldf', @filename2 = N'D:\SQL-TEMP\bbsDB_data.mdf' 参考下 一般遇到这种情况首先核所使用的开发环境(如 VS2005+Sql2005),如果你采用的是sqlServer2005的话,如果你用Sql2000附加Sql2005的数据库就会出现这种错误(解决方法:改用SqlServer2005附加一下,如果还想用Sql2000格式那就用导出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新建的库 -- 在"选择源表和源视图"中, 选择所有的表 -- 最后完成 谢谢5楼的帮助,但并用你的方法也在分析器里试过了。出错的信息仍旧是:服务器: 消息 602,级别 21,状态 50,行 1未能在 sysindexes 中找到数据库 ID 11 中对象 ID 1 的索引 ID 1 对应的行。请对 sysindexes 运行 DBCC CHECKTABLE。连接中断 你那个库是哪儿来的,数据库是SQL2005? DBCC CHECKTABLE 一下看看 一个SQL自连接的语句 update table pbvm70.dll 报错 哪种效率更高一些呢? 请问如何用代码建立两个最简化的表,并建两表的多对多关系,并对其增删改操作?(sql server2000) mysql 怎么跳出循环? 如何才能联接成这样子 sql 2005 数据库还原 left join 和Left outer join和join有什么区别?? 一个有关日志的问题。 高手请进 两个数据库,根据库A的情况,更新数据库B。
服务器: 消息 602,级别 21,状态 50,行 1
未能在 sysindexes 中找到数据库 ID 11 中对象 ID 1 的索引 ID 1 对应的行。请对 sysindexes 运行 DBCC CHECKTABLE。连接中断
@filename1 = N'D:\SQL-TEMP\bbsDB_log.ldf',
@filename2 = N'D:\SQL-TEMP\bbsDB_data.mdf'
一般遇到这种情况首先核所使用的开发环境(如 VS2005+Sql2005),如果你采用的是sqlServer2005的话,如果你用Sql2000附加Sql2005的数据库就会出现这种错误(解决方法:改用SqlServer2005附加一下,如果还想用Sql2000格式那就用导出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新建的库
-- 在"选择源表和源视图"中, 选择所有的表
-- 最后完成
服务器: 消息 602,级别 21,状态 50,行 1
未能在 sysindexes 中找到数据库 ID 11 中对象 ID 1 的索引 ID 1 对应的行。请对 sysindexes 运行 DBCC CHECKTABLE。连接中断