日期:2021/9/9 1:00:14来源: IT猫扑网
MS sql2005对2000进行了很大的改进,而用户关系这部分也变得相当复杂了,很多朋友都对此一知半解!下面,我将把我应用中总结的和大家分享下,先从概念入手,希望对不理解的朋友有点提示。
今天我们要说的包括服务器登录名Server Login,服务器角色Server Role,数据库用户DB User,数据库架构DB Schema,数据库角色DB Role 。以上几个名词应该从服务器与数据库来区分,服务器包含一到多个数据库,其中:
服务器登录名,指有权限登录到某服务器的用户;
服务器角色,指一组固定的服务器用户,默认有9组;
登录名一定属于某些角色,默认为public
服务器角色不容许更改
登录后也不一定有权限操作数据库
数据库用户,指有权限能操作数据库的用户;
数据库角色,指一组固定的有某些权限的数据库角色;
数据库架构,指数据库对象的容器;
数据库用户对应于服务器登录名以便登录者可以操作数据库
数据库角色可以添加,可以定制不同权限
数据库架构,类似于数据库对象的命名空间,用户通过架构访问数据库对
服务器登录名属于某组服务器角色;
服务器登录名需要于数据库的用户映射后才拥有操作数据库的权限
数据库用户属于某组数据库角色以获取操作数据库的权限
数据库角色拥有对应的数据库架构,数据库用户可以通过角色直接拥有架构
数据库用户有默认架构,写SQL语句可以直接以"对象名"访问
非默认架构则要以"架构名.对象名"访问
因此,新建一个非SA账户并建立数据库的过程可以如下:
1、新建登录名Login1
2、新建数据库DB1
3、新建DB1的架构Schema1
4、新建BD1的用户User1,登录名对应Login1,默认架构选择Schema1,角色选择db_owner
5、在登录名Login1的属性窗口里选择"用户映射",勾选DB1,在用户里填写User1,默认架构选择"Schema1"
6、至此,新建表名会是Schema1.Table1,其他对象也如此
7、当然还可以新建其他架构的对象Schema2,只有User1拥有该架构,一样可以访问,如Schema2.Table2
值得注意的是,当为登录映射数据库用户的时候,多个数据库可以有相同名称的用户,而单独为某个数据库新建的用户,如User1,则在其他数据库里不允许同名。
以上就是全文,希望对大家理解并创建数据库有些帮助,也请大家多多交流。
相关文章
相关下载
sql2005 ssmseeMSSQL37Mx64中文精简版
下载Microsoft Exchange Server 2010 SP2MSSQL526M64位微软官方安装版
下载nginx+php服务器软件(YimonServer)MSSQL31.9Mv0.10 绿色版
下载AbelCam(视频服务器)MSSQL25.2Mv4.4.3 免费版
下载Nginx稳定版MSSQL994KBv1.18 官方版
下载Core FTP Server_FTP服务器MSSQL3.7Mv2.2 Build 1931 免费版
下载网友评论