我想修改sysdatabases 里面的信息,sqlserver已经用单用户模式启动了
但是用ssms登录时却登录不了,提示:"服务器处于单用户模式。目前只有一位管理员能够连接。"
我用的是sa帐号,但也连接不了。服务器名前加"Admin:"也不行,直接找不到服务器。目的就是想修改sysdatebases的信息,sql版本是2008 R2,请问现在应该怎么解决?
谢谢
但是用ssms登录时却登录不了,提示:"服务器处于单用户模式。目前只有一位管理员能够连接。"
我用的是sa帐号,但也连接不了。服务器名前加"Admin:"也不行,直接找不到服务器。目的就是想修改sysdatebases的信息,sql版本是2008 R2,请问现在应该怎么解决?
谢谢
但是windows帐号登录也不行,
现在目的就是想修改系统表,网上搜到的资料是要设置成单用户模式才可以
仔细看SQL Server Management Studio中,
不是点击[连接]下的[Database Engine],
正确是点击[新建查询],就在[连接]偏上一点的位置那.
但是登录后无法打开系统表和视图,提示“未指定的错误”
新建查询也不行,也是提示:"服务器处于单用户模式。目前只有一位管理员能够连接。"
这样可以连接上了,但是还是修改不了系统表(视图),请问你当年有修改成功系统表吗,数据库版本是sql2008 R2另外说多次,登录单用户模式的目的是为了修改系统表(视图)
请问正常模式下怎么修改系统表呢?谢谢
sp_configure 'allow update',1
go
reconfigure with override
go
use master
go
update sysdatabases set crdate=dateadd(day,2,crdate) where name ='SBO-COMMON'
go
sp_configure 'allow update',0
go
reconfigure with override
go提示:不允许对系统目录进行即席更新。
无法修改的,即使设置了allow update选项.
select name,id,xtype from sysobjects
where name='sysdatabases'name id xtype
-------------- ----------- -----
sysdatabases -202 V
sp_helptext 'sysdatabases'--粘贴出来,修改其中第32行, 原为 crdate = d.create_date,
--修改为如下,你懂的.
crdate = case when d.name<>'[数据库名]' then d.create_date
when d.name='[数据库名]' then dateadd(day,2,d.create_date) end,--然后依据此代码新建一个自定义视图.