数据库还原后无法登陆的问题?因为选定的用户拥有对象,无法删除
Http://www.Egocbd.com 点击数: 更新时间:2010-2-3 10:08:30
键 删除:
选择 是
在返回到用户列表,看看还有该用户没有,如果没有用户,我们在去sql的安全里面把该数据库对应的用户添加上去,我把liuhui添加上去了,测试网站没有问题了。
再返回动作3把选择上的 允许对系统目录直接进行修改 去掉
使用下面这个方法也可以删除这个用户,把数据表里的所有者对象全部修改成dbo先在,现在在删除就已经没有问题了,
==================================================
问题解决方式:
1 如果是一张表有此问题,解决方式如下:
exec sp_changeobjectowner mis.tablename', 'dbo'
这样就把tablename指定的表的所有者赋值给了dbo用户
选择 是
在返回到用户列表,看看还有该用户没有,如果没有用户,我们在去sql的安全里面把该数据库对应的用户添加上去,我把liuhui添加上去了,测试网站没有问题了。
再返回动作3把选择上的 允许对系统目录直接进行修改 去掉
使用下面这个方法也可以删除这个用户,把数据表里的所有者对象全部修改成dbo先在,现在在删除就已经没有问题了,
==================================================
问题解决方式:
1 如果是一张表有此问题,解决方式如下:
exec sp_changeobjectowner mis.tablename', 'dbo'
这样就把tablename指定的表的所有者赋值给了dbo用户
2 如果所有表都存在此问题,这是就要编写存储过程实现批量修改了
IF OBJECT_ID('ChangeAll') IS NOT NULL DROP PROC ChangeAll
GO CREATE PROCEDURE ChangeAll (
@old sysname,
@new sysname
)
AS
DECLARE @objname sysname SET NOCOUNT ON IF USER_ID(@old) IS NULL
BEGIN
RAISERROR ('The @old passed does not exist in the database', 16, 1)
RETURN
&