木子屋 Dnawo's BLOG

SQL Server2005为登录名分配数据库权限失败:创建对于用户"user01"失败

👤 dnawo 📅 2011-02-15 👁 7437 👍 0 💬 0 🔄 来源:本站原创
下午在SQL Server2005上新建了一个登录名user01,但在给他分配数据库权限(DataCenter)时总是失败,提示:创建对于用户"user01"失败。

图片

找了很久才发现原因,但在说明原因之前我先说明一个现象:SQL Server2005登录名和数据库用户是两个不同的概念,在给登录名分配数据库权限时都会为数据库新建一个用户,并将他们关联,由于新建用户名称和登录名默认是相同的,不需要去修改,所有我们平时可能不会注意到这个。在删除登录名时,数据库中同名用户并不会一块删除,这在删除登录名时有说明[1]。

图片

图片

好了,现在可以说明原因了:由于先前新建过登录名user01并给DataCenter分配过权限,后来删除了登录名user01,注意仅仅是删除了登录名,数据库中同名用户没有删除,今天再创建登录名user01并分配数据库权限时,由于数据库已经存在用户user01,所以就出错了。解决方法有两种:一是删除数据库用户user01,二是修改默认的新建的数据库用户名,再分配数据库权限就可以成功了。

图片

[1].SQL Server2000删除登录名时会同时删除同名的数据库用户,SQL Server2005不会。
图片

评论(0)

暂无评论。

验证码
评论需审核通过后显示
← 上一篇 中国电信天翼无线宽带使用示例 下一篇 → 中国移动cmwap上网会拦截手机User-Agent