A. sql server附加数据库时出错,提示说: 附加数据库时出错。有关详细信息,请单击“消息”列中的超链接。急
这个是因为数据库是从其他电脑或者其他版本的原始文件,需要手动分配一下当前数据库版本的访问数据库原始文件的权限,解决方法如下:
1、首先打开数据库之后,选择性的进行登录的,这里我们运用sa密码进行登录。
B. sql附加数据库出错一直正在执行
如下,在附加数据的时候出现如下的报错。排除分离和附加SQL SERVER数据库软件的版本问题外。造成这个问题的原因为存放数据库文件夹的权限问题造成的。
C. sql server2008附加不上数据库怎么办
在网上查了查资料,确实按照此方法把问题解决了,先将解决办法总结如下:
原因:1.可能是数据文件损坏。
2.可能是日志文件损坏或丢失。
3.是因为没有操作权限,所以附加的时候出错,只要设置数据库文件的安全属性即可。
解决原因3的办法:
1.若不是用sqlserver身份验证登陆的,请用sqlserver身份验证sa登陆。
2.修改mdf和ldf文件的权限:“右击”打开该数据库文件的属性窗口,选择“属性”菜单->选择“安全”标签->选择“编辑”按钮,然后在选择组或用户名列表中,选择Authenticated Users,在权限列表中选中完全控制。
4.选择"确定"按钮关闭对话框。
再重新附加数据库,成功。
D. SQL数据库附加失败了,我要怎么办啊
您好,很高兴为您解答。
第一步:先建立一个同名数据库,停止sql server2005,将原来的.mdf数据库文件覆盖刚新建的.mdf数据库文件,重新启动数据库
第二步:查询分析器执行,
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'
第三步:以上代码请同时运行,可能会出现“数据库其他多个文件与数据库主文件不匹配....”错误,请多次重试执行以上代码 。
如若满意,请点击右侧【采纳答案】,如若还有问题,请点击【追问】
希望我的回答对您有所帮助,望采纳!
~
o(∩_∩)o~
E. 为什么sql server 高版本的数据库不能附加低版本 mdf文件
是这样的,662是SQL Server 2008 SP2以后的数据库版本号,SP2之前的SQL Server 2008 x0dx0a的数据库版本好是655,而661是SQL Server 2008 R2的数据库版本号,本身SQL Server 2008 R2的版本要比SQL Server 2008 要高,按常理661版的数据库文件是不能附加到支持655版本号的SQL Server 2008里的。至于出现这个蛋疼的提示是因为微软在SQL Server 2008 SP2里加入了15k分区数的功能,而发布SP2之前就已经发布了SQL Server 2008 R2了,由于SQL Server 2008 R2 RTM并不支持15k分区的功能,如果按常规SQL Server 2008还保持655的版本号的话就可能会出现附加15k分区的数据文件到SQL Server x0dx0a2008 R2 RTM中,这肯定是不能附加的,所以微软为了解决这个难题,就打破常规,SQL Server 2008 SP2里将数据库的版本号改为662,这样,由SQL Server 2008 R2 RTM的数据库版本号比SQL Server 2008 SP2的低,所以自然就不能附加了,避免了麻烦,不过为了一15k分区的功能改变了版本号带来的副作用就像楼主这种情况了。x0dx0a这时问题的根本缘由。x0dx0a其实说白了,你是拿SQL Server 2008 R2的数据库附加到SQL Server 2008中,这肯定是不行的。要么将你现在的数据库实例升级到 SQL Server 2008 R2并安装最新的SP补丁之后再附加。要么将chat数据库附加到SQL Server 2008 R2版的数据库实例里,生成SQL Server 2008版的脚本文件,使用脚本文件部署到SQL Server 2008 SP2里。x0dx0ax0dx0a至于前边有朋友说用备份的方式,如果理解了我前边说的就知道肯定也是行不通的。