数据库

位置:IT落伍者 >> 数据库 >> 浏览文章

请问在sql2000中怎么区分登入,用户,角色,并用例子举例说明


发布日期:2019年03月16日
 
请问在sql2000中怎么区分登入,用户,角色,并用例子举例说明

()登入id是不是就是用户名(当我创建了一个登入 我在点击登入所对应的数据实例中的用户一栏看到登入id与用户名一致)
()一个登入id是不是只能对应一个用户
教科书答案:登录 id 仅能使您连接到 sql server 实例特定数据库内的权限由用户帐户控制数据库管理员将您的登录帐户映射到您有权访问的任何数据库中的用户帐户
用户如:sa
角色如:public/db_owner/db_datareader/db_datawriter等
只有给用户赋予角色该用户才有相应的操作数据库的权限
如将public/db_owner角色赋给sa则该用户有对数据库进行一切操作的权限
角色:完成特定的与服务器相关的管理任务所需的权限一个用户可以属于多个角色
登录:仅能使您连接到 sql server 实例
命题官的理解:
登录是sql实例级的
用户是数据库级的
角色有实例级和数据库级两种
登录决定你是否能访问sql实例
用户与登录对应 确实某个登录后 它对那些数据库有那些权限
角色是为了方便管理一类登录或者用户所具有的权限 当某一类登录或者用户具有相同的权限时 可以简单地给予他们对应的角色即可
做个形象的比喻:
sql实例就相当于一个公司
如果你要在公司工作自然就要成为公司的员工 因此公司的员工就相当于登录
公司有不同的部门 这相当于数据库 你要在某个部门做事 必须把你分配到某个部门 也就是在部门的名单中要有你 这个部门的名单就相当于用户 名单必须对应公司的某个员工
但你一个人是可以在多个部门工作的
因此 一个登录可以对应多个数据库的不同用户
同样 一个员工在一个部门的名单中只可能出现一次
因此 一个登录在同一数据库中 只可能对应一个用户
为了方便定义每个员工应该做些什么 应该承担什么职责 公司会定义职位 我个职位对应的 在数据库中就叫角色
因为有的职位是公司层面的 比如懂事长 他什么都可以管
因此 有sql实例级的角色
也可以具体地为每个部位定义职位 不同部门的同一名称的职位它的具体内容可以不同
因此对应于sql而言 它又有数据库级的角色
某个员工是某个职位 则具有该职位对应的权限与责任
因此 对于sql而言 某个登录或者用户被授予某个或者某些角色 它就具有对应的权限
不同职位 在不同时期 可以由不人担任 换人只需要取消和授予对应人员的职位就可以了 不用改职位定义
因此 对于sql而言 可以根据需要取消和授予某个登录或者用户的角色
(这是管理方便性需要 你完全可以不理会角色 自己为用户或者登录指定权限)

上一篇:Oracle多种启动方式

下一篇:SQL Server 2005的cmd