我的SQL数据库是2008版本,如何附加SQL2005创建的数据库?(只有数据库文件,没有脚本)急求高手!!

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了我的SQL数据库是2008版本,如何附加SQL2005创建的数据库?(只有数据库文件,没有脚本)急求高手!!相关的知识,希望对你有一定的参考价值。

参考技术A 在SQL管理器中连上数据库服务器,然后右键点“附加”就可以了,步骤和以前是一样的。

SQL2008向下兼容,附加SQL2005的库没问题。
参考技术B 可以附加!
向下兼容的,不过,需要MDF与LDF都齐全!!并在一个目录中!追问

是在一个目录中,但是还是有错误。

追答

把文件COPY到根目录或英文目录名中试试,另外,检查一下文件权限是否可写!!!

追问

怎样看修改文件的权限?求解啊!

追答

在文件上鼠标右键,看看文件是否有只读属性!
另外,再在文件右键-〈属性〉-〈安全〉看看是否有可写的权限

本回答被提问者和网友采纳

SQL Server2008 如何附加没有日志文件ldf的数据库mdf?

SQL Server2008 如何附加没有日志文件ldf的数据库mdf?

可以直接附加,如果只有mdf文件没有日志文件,系统会自动产生一个日志文件。 参考技术A DB:Microsoft SQL Server 2008 R2 (10.50.1600)
现象:SQL Server 2008 R2 版本的数据库没有ldf文件,直接附加mdf文件。

解决步骤:
1.使用默认方式建立一个供恢复使用的数据库(如dbname)。
2.停止数据库实例服务。
3.将刚才生成的数据库的日志文件dbname_log.ldf删除,用要恢复的数据库mdf文件覆盖刚才生成的数据库数据文件dbname.mdf。
4.启动数据库服务器。此时会看到数据库dbname不可访问。
5. ALTER DATABASE <dbname> SET EMERGENCY
6. ALTER DATABASE <dbname> SET SINGLE_USER
7. ALTER DATABASE <dbname> REBUILD LOG ON (NAME=dbname_log, FILENAME='E:\XXX\xxx\dbname_log.ldf')
执行后,会有警告信息“警告: 数据库 'dbname' 的日志已重新生成。已失去事务的一致性。RESTORE 链已断开,服务器不再有以前的日志文件的上下文,因此您需要了解它们的内容。应运行 DBCC CHECKDB 验证物理一致性。数据库已置于 dbo-only 模式。在准备使数据库可用时,需要重置数据库选项,并删除所有多余的日志文件。”
8. DBCC CHECKDB(<dbname>, REPAIR_ALLOW_DATA_LOSS)
9 ALTER DATABASE <dbname> SET MULTI_USER
10. ALTER DATABASE <dbname> SET ONLINE
大功告成!
参考技术B 新建一个数据库,把名字和这个MDF文件一样,停止数据库,将mdf覆盖你的新建的数据库,然后重新启动 参考技术C 附加的时候删除日志连接就行了

以上是关于我的SQL数据库是2008版本,如何附加SQL2005创建的数据库?(只有数据库文件,没有脚本)急求高手!!的主要内容,如果未能解决你的问题,请参考以下文章

为啥我的SQL Server 2008把数据库分离出来后就附加不进去了呢?

为啥sql server 高版本的数据库不能附加低版本 mdf文件?

SQL SERVER 2008 R2 数据库附加到 SQL server 2005,怎么整

sql2008r2的数据库能不能在2008上使用

SQL server 2008 r2附加数据库出现错误了,见下图,怎么解决?求帮助!!!!!

SQL2005附加数据库失败