数据库系统原理课程设计说明书――工资管理系统
如删除存储帐号a1,命令格式为:exec sp_droplogin 'a1' 注意:在SQL Server中删除账户信息有许多限制的,例如,已
经映射到数据库用户上的不允许被删除;系统账户sa不能被删除;正在使用的账户不能被删除;拥有数据库的账不能被删除等。 3、服务器角色管理
服务器角色是指根据SQL Server的管理任务,以及这些任务相
对的重要性等级来把具有SQL Server管理职能的用户划分为不同的用户组,每一组所具有的管理权限都是SQL Server内置的,即不能对其进行添加、修改和删除,只能向其中加入用户或者其他角色。七种常用的固定服务器角色:
程。
安全管理员(Security Administrators):管理和审核SQL Server系安装管理员(Setup Administrators):增加、删除连接服务器,建数据库创建者(Database Creators):创建数据库,并对数据库进注意:管理员或数据库所有者在设置访问权限时,应首先建立
统登录。
立数据库复制以及管理扩展存储过程。 行修改。
角色,并将访问权限集中授予角色,之后将需要拥有这一权限的用户增加到角色中,这些用户即继承角色的访问权限。 4、数据库用户管理
用户是基于数据库使用的名称,是与登录帐户相对应的。有两
个默认的数据库用户帐户:dbo和guest,可对数据库添加新用户。
26
系统管理员(System Administrators):拥有SQL Server所有的服务器管理员(Sever Administrators):管理SQL Server服务器磁盘管理员(Disk Administrators):管理磁盘文件。
进程管理员(Process Administrators):管理SQL Server系统进
权限许可。 端的设置。
数据库系统原理课程设计说明书――工资管理系统
与服务器帐户的关系:登录帐户为了访问数据库,必须成为数
据库用户帐户或者一个默认的用户帐户,数据库的访问权是通过影射数据库的对象与登录帐户之间的关系来实现的。
(1)、用户帐号添加 步骤如下:
①右键单击某数据库下“用户”,选择“新建数据库用户”,出②在对话框中选择访问该数据库的帐户,指定该帐户在该数据
现新建登录对话框。
库中的用户名称和该用户的角色等信息。(注意:只有在数据库中没有用户名称的帐户才可以选择)。
另外,还可以使用系统存储过程添加数据库用户,格式为: exec sp_grantdbaccess 用户帐户名 (2)、用户帐号删除
使用系统存储过程:sp_revokedbaccess 用户帐户名
注意:dbo是数据库的拥有者,在安装SQL Server的同时,就
被设置到Model数据库中,而且不能被删除,所以dbo在每个数据库中都存在。dbo是数据库的最高权力拥有者,可以在数据库范围内执行一切操作。dbo永远无法从数据库中删除。dbo用户对应于创建该数据库的登录账户,所以所有系统数据库的dbo都对应于sa账户。
guest用户可以是任何已经登录到SQL Server服务器的用户。所
有的系统数据库除了Model数据库以外都有guest用户,而所有新建的数据库都没有这个用户,可以使用exec sp_grantdbaccess ‘guest’,为当前数据库添加guest用户。Guest用户的存在意味着所有登录到SQL Server 服务器的用户都可以访问该数据库,即使他没有成为数据库的用户。
5、数据库角色管理
数据库角色是为某一用户或某一组用户授予不同级别的管理或访问数据库以及数据库对象的权限,这些权限是数据库专有的,并且还可以使一个用户具有属于同一数据库的多个角色。SQL Server提供了两种
27
数据库系统原理课程设计说明书――工资管理系统
类型的数据库角色:即固定的数据库角色和用户自定义的数据库角色。
操作。
db_accessadmin:可以增加或者删除数据库用户、工作组和角色。 db_addladmin:可以增加、删除和修改数据库中的任何对象。 db_securityadmin:执行语句许可和对象许可。 db_backupoperator:可以备份和恢复数据库。
10个固定的数据库角色(也称为标准角色):
public:每个数据库最基本的数据库角色,每建立新数据库帐户,db_owner:数据库的所有者,可以对所拥有的数据库执行任何
系统自动会为其加入public角色。
6、许可(权限)管理
SQL Server数据库对象包括表、索引、视图、触发器、存储过程等,数据库对象的创建者即成为数据库对象的所有者。数据库对象创建完后,只有拥有者可以访问该数据库对象。任何其他用户想访问对象必须获得拥有者的许可。拥有者可以授予许可给指定的数据库用户,这种许可被称作对象许可。
对表和视图,拥有者可授予INSERT、UPDATE、DELETE、SELECT和REFERENCS 许可,或者用“ALL permissions”代替前面5种许可。
数据库拥有者还可授予执行某些Transact-SQL命令的许可。这种许可在SQL Server 称作命令许可。例如“CREATETALBE”或“CREATEVIES”等。这些命令本来只有特定用户如dbo可以使用。 (1)、授权许可
授权许可的命令用Grant,具体格式参考“SQL 的联机帮助”。 如:授权a1对数据表p有插入、删除和更新操作权限。 grant insert,update,delete on p to a1
如:授权a1有创建视图,数据表的权限。 grant create view ,create table to a1
28
数据库系统原理课程设计说明书――工资管理系统
(2)、撤消许可
帮助”
五、总结 5.1 收获
对于这次数据库课程设计给的我们最大的印象是:流程是一切的根本,架构和想像是很重要的,实践比一切空谈和理论更能学到东西。虽然在制作这个课设的途中遇到了很多困难,但是,我们都没有一丝的放弃的念头。我们认为它不仅仅是一个课程设计,而是体现我们各自团队合作的能力,体现我们整理智慧。在做实例过程中,确保数据长度的一致,命令中心输入任何命令都要谨慎小心。从中锻炼我们分析问题、解决问题沉着冷静的心态;世事洞明皆学问,通过做这个课程设计,我们不仅深刻的掌握了数据库的知识而且学会了很多道理。
最后,感谢毛老师的耐心指导,没有您的无私教导和帮助,就没有今天的工资管理系统的实现,谨此,衷心感谢您!
5.2 不足和改进
29
撤消许可的命令用Grant,具体格式参考“SQL 的联机帮助” revoke insert,update,delete on p to a1, 撤消a1对数据表p有插如:授权a1有创建视图,数据表的权限。
在不撤消授权许可的前提下,数据库管理员可以根据实际情况,
入、删除和更新操作权限 (3)、拒绝许可
拒绝用户对数据库的访问,命令用Deny,具体格式参考“SQL 的联机
Deny insert,update,delete on p to a1
数据库系统原理课程设计说明书――工资管理系统
在工资管理系统的导入数据库后我们发现了许多不足之处,如:对于员工基本信息不够完善,系统设计过于单一和古板,没有非常的突出的特点。但是我们设计的工资管理系统有很大的可以拓展性,对于此系统,可以再加上许多管理的方面的内容,不单单是工资方面的,可以把此系统向银行方面的系统拓展。
参考文献
1、 刘智斌,刘玉萍,杨柳编著.《数据库原理》(第二版).重庆大学出版社,2006
2、萨师煊,王珊编著.《数据库系统概论》(第四版).高等教育出版社,2006 3、钱雪忠,陶向东编著.《数据库原理及应用实验指导》.北京邮电大学出版社,2006
4、 龚小勇编著《.关系数据库与SQL Server 2000》.机械工业出版社,2004
致 谢
“不要人夸好颜色,只留清气满乾坤”。感谢毛老师这一周以来的悉心帮助与教导,在老师的帮助下,我们完成了本次课程设计,基本达到了工资管理系统的要求。
30