第一步:先建立一个同名数据库,停止SQL SERVER2005,将原来的mdf数据库文件覆盖刚新建的mdf数据库文件,重新启动数据库
第二步:查询分析器执行,
1
2
3
4
5
6
7
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'
第三步:以上代码请同时运行,可能会出现“数据库其他多个文件与数据库主文件不匹配”错误,请多次重试执行以上代码 。
根据提示,应该是语法错误,请仔细检查语句,初步查看,估计是Filename='D:\\QQMasert_datamdf'这句的问题,D后面的双斜杠应该改为单斜杠。即改为:filename='D:\QQMasert_datamdf'
在所有程序—SQL Server 2005—配置工具—"SQL Server Configuration Manager",点击"SQL Server 2005服务",右键‘属性’——>'登录选项卡',右击你的用户(如sa)属性,内置帐户选择"Local System",点击重新启动就OK了。
你用的语法是sqlserver的
但你数据库看报错是用的mysql,报错是理所应当的
mysql创建数据库,直接
create database lvyunleiif判断是判断是不是已经存在了同名的数据库了?如果存在,那么删除掉。
这样才能保证你下边创建数据库编码不会冲突,否则如果if成立,会存在同名的数据库,你创建会提示错误的。
use
q1,表示将数据库切换到q1上去,这样你再写sql语句,就是在这个数据库上运行了。
比如登录查询分析器默认的数据库是master,而user
q1,会将数据库切换到q1上。
mastersysdatabases
这个意思是master数据库里面的sysdatabases表,此处必须是两点,前边不是表名,而是数据库名。比如你查询分析器连接的是q1数据库,而这时候你想直接跨库查询northwind数据库的表数据,select
from
northwindcategory
两个点前边的是数据库名,后边是表名。
以上就是关于sql2008无日志文件附加数据库失败,怎么办全部的内容,包括:sql2008无日志文件附加数据库失败,怎么办、求:SQL中使用CREATE DATABASE创建数据库失败的解决办法、SQLsever无法创建数据库问题等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)