login 是能够登录到数据库的登录名
user是针对单个数据库而言的
你创建一个login后可以给每一个数据创建一个基于这个登录名的用户,且在不同数据库中用户名可以相同 这样可以有效的控制该登录名在不同数据库中的权限
--创建SQL Server 的登录名
exec sp_addlogin 'loginProduct','pwd'
--为数据库1创建用户user1Product
use Database1
go
exec sp_adduser 'loginProduct','user1Product'
go
--为数据库2创建用户
use Database2
go
exec sp_adduser 'loginProduct',
'user1Product' --这里的用户名是可以相同的 但是一个数据库对应一个登录名只能有一个用户
go
Wenn ich dich hab’,gibt es nichts, was unerträglich ist.坚持不懈!
My blog~~~
我摸索的结果也是这个样子,但是我不敢确定,所以上来问问
还有一个问题,现有一个数据库DB,登陆名为loginDB,用户名为userDB,用loginDB登陆到了SQL系统,系统里还有其它的数据库像DB2,DB3......,而用loginDB这个登陆名登陆上来的login只可以操作DB这个数据库,我想问的是:操作DB数据库的时候,用户是不是userDB(对于一个数据库而言,login与user是一对一的关系),我的理解是:login与user绑定了,此时操作数据库的就是userDB这个用户了,不知道我这样理解与描述正不正确
还有一个问题,我这个数据库是有多个用户的(首先系统里就有好多个用户在那个地方),那我怎么知道我现在使用的是哪个用户呢?我知道,如果切换成另一个用户来操作的话用什么来实现?