如何解决引用对象时必须加所有者计划
高平历史网 2021-10-29 05:47:10
问题描述:
从别处copy来一个数据库DB,附加后,对象的所有者不是Admini,每次查询时必需写select * from Admini.***才能查到。有什么方法不用前面的Admini吗(在不修改所有者的前提下)?注:
已经在“安全性-登陆”下面也新建了一个Admini用户,默认数据库设置为DB,权限足够,但在查询分析器下用Admini登陆,查询时还是要写Admini前缀,否则就提示对象名无效
问题解决方法:
如果是用的是sql 2000的话,用某个用户登录, 不指定所有者的话, 访问对象的时候, 默认的所有者就是当前登录用户
如果是2005的话, 在数据的安全性--用户--右键你的用户admin--属性, 看看默认构架是什么, 这个默认架构决定当你访问对象时, 不指定所有者的话, 使用那个所有者(sql 2005中, owner变成构架了)
目前昌黎宏兴普碳方坯报价2350 会导致与上面的说法不匹配的异常情况:
如果在数据库DB中,Admini是孤立用户的话,则情况会与上面描述的有出入(附加或者恢复数据库很容易出现孤立用户),即引用对象时必须指定所有者。孤立用户的表现是:只能创建Admini登录, 并通过服务器角色给其分配对DB的权限,或者是在DB中建立名称不是Admini的用户与登录关联。
要查询DB中的孤立用户情况,执行下面的语句:
USE DB
GO
EXEC sp_change_users_login \'Report\'
解决孤立用户的方法:
解决这种异常只要解决掉孤立用户,在确定了Admini是孤立用户后,可以执行下面的语句来解决:
USE DB
GO
-- 修复孤立用户
EXEC sp_change_users_login \'Auto_Fix\', \'Admin\', NULL, \'密码\';
-- 这个密码是指, 如果没有事先建立admin 这个登录的话, sql自动创建登录时, 为该登录分配的密码
-- 授予在DB 中的相关权限
EXEC sp_addrolemember \'db_owner\', \'Admin\'
济南治疗卵巢炎医院吃什么可以防止补气流失
石家庄哪家医院男科医院好
- 上一页:如何解决大部分的错误消息物业
- 下一页:如何解决整理输入的数据覆盖
- 黄昏错过舒淇,被前妻伤透心,51岁才如愿当上爸爸
- 夏日连衣裙别乱穿,记住这3个小技巧,气质优雅有魅力
- 首部双女主剧退去,赵丽颖搭档李沁,更有许凯强势加盟
- 5G有了!华为将在6月发布nova 10系列,芯片换用拍照更好
- 苹果VR/AR头盔曝光 传了10年的死讯终于要实现了吗?
- 哈佛代理校长2022年毕业演讲:带着激情和热情去拥抱未知世界!
- 夏天穿戴T恤,别总穿戴黑白灰,这3种“流行色”才高级,衬肤又显白
- 人到了一定的年龄,才知道太过善良,多半得不偿失!
- 喜报 | 广州市天河职业职业学校现代学徒制项目录取率100%
- 蓝天燃气(605368.SH)发预盈,预计上半年盈利3.2亿元-3.6亿元,同比增加65.75%-8
- 微信朋友圈补丁“你的访问已被记录”,这波操作爱了爱了
- 关乎大资金动向!科创板“芯片”指数来了,42只样本股名单公布;上交所几大指数也调整,腾讯、美团等权重