数据库管理系统的登录名、角色,数据库的用户、角色和架构

概述

       之前的一篇博客中写到过关于服务器登录名,服务器角色,数据库用户,数据库角色的关系,理论的一些知识,大家可以看看这篇博客:登录名,服务器角色,用户名和数据库角色。本片博客注重操作。


数据库架构

       在具体的操作时,先普及一下数据库架构的知识,这里需要注意一下,这里说的数据库架构不是针对数据库的拓扑结构来说的,而是针对数据库管理系统中,针对数据库的一个功能。

       举例说架构和架构的好处,数据库为一座楼,那么架构就是一层楼,一层楼中的房子就是表,由表产生的存储过程,触发器等等也都属于这个架构,将一层楼租给多人去住,这些人在这层楼房里随便折腾,但是,这些人走后,他折腾的东西不需要改变,后来人可以再次基础上接着折腾,因为前人折腾出来的东西都属于这个架构,东西属于架构不是属于人,所以,人走了之后,东西不需要再进行相应的改变。

       框架:存放数据库对象的一个容器,框架里面的对象必须是唯一的,不同框架的对象的名称可以相同,一个数据库有多个框架。在之前(sql 2000)的数据库对象访问时,采用的是服务器名.数据库名.用户名.表名称,之后的数据库访问方式是这样的,服务器名.数据库名.框架名.表名称,这样做的好处就是,某个用户辞职不干了,我就可以直接删除这个用户就行了,但是,之前是不行的,因为数据库对象是通过用户名查找的,这样的一个修改是非常麻烦的。当然框架的作用不仅仅如此,如:框架限制了用户对数据库其它框架表的访问。好了,理论方面的东西到此结束,下面开始实战。


创建数据库系统登录名

       创建3个系统登录名,分别为Student、Teacher和Person,具体操作如下图

数据库管理系统的登录名、角色,数据库的用户、角色和架构_第1张图片


创建数据库

create database DataBaseName
go


创建数据库架构

       创建3个架构,架构的名字分别为:Teacher_KJ、Student_KJ和Person_KJ,具体操作如下图

数据库管理系统的登录名、角色,数据库的用户、角色和架构_第2张图片


创建数据库角色

       创建2个数据库角色,角色名字分别为:Teacher_JS和Student_JS,分别对象上面的架构名称,具体对应一看就可以看出,如:Teacher_JS对应Teacher_KJ,具体操作如下图

数据库管理系统的登录名、角色,数据库的用户、角色和架构_第3张图片


创建数据库用户

       创建3个用户,分别为Teacher_User、Student_User和Person_User,其中Teacher_User和Student_User的属于角色,没有具体的架构,Person_User不属于创建的角色,拥有Person_KJ,具体操作如下图

数据库管理系统的登录名、角色,数据库的用户、角色和架构_第4张图片

数据库管理系统的登录名、角色,数据库的用户、角色和架构_第5张图片

数据库管理系统的登录名、角色,数据库的用户、角色和架构_第6张图片


创建相应架构下的表

use DataBaseName
go
create table [Teacher_KJ].TableName1
(
	id int primary key,
	name varchar not null
)
go
create table [Student_KJ].TableName1
(
	id int primary key,
	name varchar not null
)
go
create table [Person_KJ].TableName1
(
	id int primary key,
	name varchar not null
)
go
create table TableName1
(
	id int primary key,
	name varchar(20) not null
)


最终结果

        有图有真相,下图为最终的结果图

数据库管理系统的登录名、角色,数据库的用户、角色和架构_第7张图片


总结

       下面是一张总结图,不是本人画的,但是非常的经典,所以就直接拿来用了
数据库管理系统的登录名、角色,数据库的用户、角色和架构_第8张图片

       Sql Server的功能非常的强大,例如,可以通过SQL Agent服务,也就是代理服务器进行很多其他事情的操作,例如:作业,维护计划,发送邮件等等,当然,在进行这些之前最好对数据库进行过备份和还原(完全备份,差异备份,日志备份)操作,因为SQL Agent服务的一个功能就是实现备份和还原的自动化。

你可能感兴趣的:(数据库系列文章(SQL,Server))