快速解决引用对象时,必须加owner的问题
2010-11-04 09:06
246 查看
问:从别处复制一个数据库DB,附加后,对象的所有者不是Admini,每次查询时必需写select * from Admini.***才能查到。用什么方法不用
问:从别处复制一个数据库DB,附加后,对象的所有者不是Admini,每次查询时必需写select * from Admini.***才能查到。用什么方法不用前面的Admini吗(在不修改所有者的前提下)? 注:(已经在“安全性-登陆”下面也新建了一个Admini用户,默认数据库设置为DB,权限足够,但在查询分析器下用Admini登陆,查询时还是要写Admini前缀,否则就提示对象名无效) 答:如果是用的是sql 2000的话,用某个用户登录, 不指定所有者的话, 对象的时候, 默认的所有者就是当前登录用户 如果是2005的话, 在数据的安全性用户右键你的用户admin属性, 看看默认构架是什么, 这个默认架构决定当你对象时, 不指定所有者的话, 使用那个所有者(sql 2005中, owner变成构架了) 下面介绍一下会导致与上面的说法不匹配的异常情况: 如果在数据库DB中,Admini是孤立用户的话,则情况会与上面描述的有出入(附加或者恢复数据库很容易出现孤立用户),即引用对象时必须指定所有者。孤立用户的表现是:只能创建Admini登录, 并通过服务器角色给其分配对DB的权限,或者是在DB中建立名称不是Admini的用户与登录关联。 要查询DB中的孤立用户情况,执行下面的语句: USE DBGOEXEC sp_change_users_login ‘Report‘解决孤立用户的方法: 解决这种异常只要解决掉孤立用户,在确定了Admini是孤立用户后,可以执行下面的语句来解决: USE DBGO 修复孤立用户EXEC sp_change_users_login ‘Auto_Fix‘, ‘Admin‘, NULL, ‘密码‘; 这个密码是指, 如果没有事先建立admin 这个登录的话, sql自动创建登录时, 为该登录分配的密码 授予在DB 中的相关权限EXEC sp_addrolemember‘db_owner‘, ‘Admin‘
use CopySino
exec sp_changedbowner 'rain'
问:从别处复制一个数据库DB,附加后,对象的所有者不是Admini,每次查询时必需写select * from Admini.***才能查到。用什么方法不用前面的Admini吗(在不修改所有者的前提下)? 注:(已经在“安全性-登陆”下面也新建了一个Admini用户,默认数据库设置为DB,权限足够,但在查询分析器下用Admini登陆,查询时还是要写Admini前缀,否则就提示对象名无效) 答:如果是用的是sql 2000的话,用某个用户登录, 不指定所有者的话, 对象的时候, 默认的所有者就是当前登录用户 如果是2005的话, 在数据的安全性用户右键你的用户admin属性, 看看默认构架是什么, 这个默认架构决定当你对象时, 不指定所有者的话, 使用那个所有者(sql 2005中, owner变成构架了) 下面介绍一下会导致与上面的说法不匹配的异常情况: 如果在数据库DB中,Admini是孤立用户的话,则情况会与上面描述的有出入(附加或者恢复数据库很容易出现孤立用户),即引用对象时必须指定所有者。孤立用户的表现是:只能创建Admini登录, 并通过服务器角色给其分配对DB的权限,或者是在DB中建立名称不是Admini的用户与登录关联。 要查询DB中的孤立用户情况,执行下面的语句: USE DBGOEXEC sp_change_users_login ‘Report‘解决孤立用户的方法: 解决这种异常只要解决掉孤立用户,在确定了Admini是孤立用户后,可以执行下面的语句来解决: USE DBGO 修复孤立用户EXEC sp_change_users_login ‘Auto_Fix‘, ‘Admin‘, NULL, ‘密码‘; 这个密码是指, 如果没有事先建立admin 这个登录的话, sql自动创建登录时, 为该登录分配的密码 授予在DB 中的相关权限EXEC sp_addrolemember‘db_owner‘, ‘Admin‘
use CopySino
exec sp_changedbowner 'rain'
相关文章推荐
- 快速解决引用对象时,必须加owner的问题
- 如何解决引用对象时,必须加所有者(owner)的问题
- 如何解决引用对象时,必须加所有者(owner)的问题
- 如何解决引用对象时,必须加所有者(owner)的问题
- 如何解决引用对象时,必须加所有者(owner)的问题
- 如何解决引用对象时,必须加所有者(owner)的问题
- 如何解决引用对象时,必须加所有者(owner)的问题
- 如何解决引用对象时,必须加所有者(owner)的问题
- 如何解决引用对象时,必须加所有者(owner)的问题
- 如何解决引用对象时,必须加所有者(owner)的问题
- 如何解决引用对象时,必须加所有者(owner)的问题
- 如何解决引用对象时,必须加所有者(owner)的问题
- 如何解决引用对象时,必须加所有者(owner)的问题
- 如何解决引用对象时,必须加所有者(owner)的问题
- 解决MVC使用时Views必须引用完整的命名空间才得到对象的问题
- 解决EMF里引用对象的刷新问题
- 关于解决JavaScript中使用require引用外部js时出现的某个对象 not defined 时现时消失 问题
- c++对象成员函数返回自身引用时出现的诡异问题及解决办法
- 解决collection调用removeAll()移除不了不同引用同值对象的问题
- 解决vs2015新建Android项目时,提示“未将对象引用设置到对象的实例”的问题