




已阅读5页,还剩56页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
.,浙江工商大学计算机与信息工程学院,数据库原理DatabasePrinciples,CollegeofComputerScienceandInformationEngineeringZhejiangGongshangUniversity,韩培友,HappyYou,.,第2章SQLServer与数据库,西京大学开发教务管理系统,需要设计学生选课数据库,数据要求:学生信息(学号、姓名、性别等)课程信息(课程号、课程、学分等),学生通过选课可以得到成绩如何设计数据库:数据库包含几个表;每个表有哪些数据项(属性)组成;如何设置表的约束条件(实体、参照和用户定义完整性约束等);使用什么工具建立数据库。SQLServer是微软研发的符合国际标准SQL(StructuredQueryLanguage,结构化查询语言)的专业级数据库管理系统,提供ODBC(OpenDatabaseConnectivity,开放数据库互连)接口,管理功能相当完善,通过简单操作就可以非常安全稳定的进行数据库管理。市场占有率,主流数据库管理工具,最新产品:SQLServer2008本章使用SQLServer2005介绍数据库及其数据表的设计与创建过程,.,2.1如何创建数据库和表,2.1.1SQLServer概述提供功能强大管理工作室,使DB管理方便、快捷、安全、稳定、高效特点:综合统一:DDL、DML和DCL,风格统一,独立完成DB理语法简单,易学易用:功能极强。核心功能仅使用了9个动词(Create、Select、Drop、Alter、Insert、Update、Delete、Grant和Revoke等)。面向集合操作:SQL全面采用集合操作方式。其查找、插入、修改和删除等操作的操作对象均是集合高度非过程化一语两用:SQL既是自含式语言,又是嵌入式语言。作为自含式语言,用户可以直接输入SQL命令,以联机交互的方式独立的管理和使用数据库。作为嵌入式语言,SQL语句能够嵌入到高级语言,.,SQLServer管理工作室,管理工作室(SQLServerManagementStudio,SSMS)提供了用于数据库管理的图形工具和功能丰富的开发环境特点:SQLServer2000企业管理器、AnalysisManager和查询分析器等功能集成于一身。功能:创建数据库、表和视图,可以编写MDX、XMLA和XML语句启动方法:开始程序MicrosoftSQLServer2005SQLServerManagementStudio。主工作区:主要由对象资源管理器(图2-1的左侧)和多文档浏览与编辑区(查询分析器+表结构设计器+表记录编辑器+信息浏览等,图2-1的右侧)等组成。本章重点:语句用法;具体操作在实验中进行。,.,.,2.1.2数据库及其表的设计,数据库设计需要考虑的问题:(1)需要设计几个数据库。(2)每一个数据库包含几个表。(3)每一个表包含几个数据项。(4)每一个数据项的类型、宽度和约束条件等。(5)数据项之间的依赖关系。对于西京大学的教务管理系统,应该采用什么方案?,.,方案一、单库单表:,(1)设计1个数据库StudentDB。(2)StudentDB包含1个表SCInfo(别名:SCI)。(3)SCInfo包含:学号、姓名、性别、年龄、学院、课程号、课程名、先修课、学分和成绩等数据项。(4)每一个数据项的类型、宽度和约束条件。,.,方案一、单库单表:,约束条件:学号SNo:字符型;10位(年4位+学院2位+班级2位+序号2位);不同的学生,学号不能相同;不能为空等。姓名SName:字符型;20位;不能为空等。性别SSex:字符型;2位;只能是男和女等。年龄Sage:单字节整型;3位(0255);年龄必须大于1岁,小于100等。学院Coll:字符型;40位等。课程号CNo:字符型;6位(学院2位+专业2位+序号2位);不同的课程,课程号不能相同;不能为空等。课程名CName:字符型;40位;不能为空等。先修课CPNo:字符型;6位(学院2位+专业2位+序号2位);无先修课的省略不填等。学分Credit:单字节整型;固定为1个字节(09)等。成绩Grade:浮点型;固定8个字节,成绩必须大于等于0分,小于等于100,.,方案一、单库单表:,(5)数据项之间的依赖关系:学生选修的课程必须是课程表中开设的课程;选课的学生必须是学生表中的学生;先修课必须是课程表中的课程号等。最终表结构:SCInfo(学号,姓名,性别,年龄,学院,课程号,课程名,先修课,学分,成绩)表2-1是与上述学生选课信息表对应的一个实例。,.,方案二、单库多表(3表),(1)设计1个数据库StudentDB。(2)设计3个表Student(别名:S)、Course(别名:C)和StudentCourse(别名:SC)。(3)3个表的数据项:Student:学号、姓名、性别、年龄、学院。Course:课程号、课程名、先修课、学分。StudentCourse:学号、课程号和成绩。(4)每一个数据项的类型、宽度和约束条件;数据项之间的依赖关系与方案一相同。最终表结构:Student(学号,姓名,性别,年龄,学院)Course(课程号,课程名,先修课,学分)StudentCourse(学号,课程号,成绩),.,方案二、单库多表(3表),表2-2、表2-3和表2-4是对应的一个实例。,.,方案二、单库多表(3表),不难看出,方案二多方面优于方案一,因此选择方案二建立数据库思考:为什么方案二优于方案一?请从多个方面进行详细分析。提示:从数据冗余、插入异常、修改异常、删除异常等方面分析。结论:针对具体应用系统,在设计数据库时,需要合理确定使用数据库的个数以及每一个数据库包含表的个数,然后规范设计每一个表包含的属性的个数以及每一个属性的特征要求、约束条件和依赖关系等,最终设计出一个合理的最佳方案。,.,2.1.3数据库及其表的建立,1.创建数据库对象资源管理器查询分析器,外模式,Student.MDFStudent.LDF,模式,内模式,.,.,(1)使用对象资源管理器创建数据库,图2-1的GUI,右击“数据库”,选择“新建数据库(N)”,图2-2中,在“数据库名称(N):”右侧输入DB的名称:StudentDB,则在“数据库文件(F):”的下方自动给出DB文件和相应日志文件的逻辑名称依次:StudentDB.MDF和StudentDB_log.LDF,默认存储位置为:C:ProgramFilesMicrosoftSQLServerMSSQL.1MSSQLDATA如果需要指定DB的存储位置,可以单击“路径”右侧的“”进行选择。其他属性,也可以根据需要进行设置。最后单击“确定”完成创建数据库。在图2-1中,展开数据库,在需要编辑的数据库上右击,然后选择“重命名”、“删除”、“刷新”和“属性”等对数据库进行相应的编辑。即:1)选择“重命名”:可以修改数据库的名称。2)选择“删除”:删除数据库,方法是在弹出的窗口中单击“确定”。3)选择“刷新”:可以刷新SSMS,使修改显示在SSMS的界面上。4)选择“属性”:可以查看和修改数据库的基本属性。注意:删除数据库时,将删除该数据库的所有数据表。,.,(2)使用查询分析器创建数据库,在图2-1中,单击工具栏的“新建查询(N)”,启动查询分析器,在图2-3中,利用查询分析器,创建数据库、数据表和视图等。即:1)在查询分析器中,直接输入SQL语句。2)单击语句语法分析按钮“”,检查分析SQL语句是否正确。3)单击执行按钮“!执行(X)”,运行查询分析器中的语句序列。创建数据库:CREATEDATABASE创建数据库StudentDB:CREATEDATABASEStudentDB删除:DROPDATABASE,删除StudentDB:DROPDATABASEStudentDB提示:查询分析器中的语句序列,可以保存为查询文件(*.sql),以备后用。,.,2.创建表,SQLServer2005的常用数据类型,创建方法对象资源管理器查询分析器,.,2.创建表,方案二:三个表的数据项及其属性如下:学号(SNo):CHAR(10);主码;非空。姓名(SName):CHAR(20);非空。性别(SSex):CHAR(2)。年龄(Sage):TINYINT;约束:1到99岁。学院(Coll):CHAR(40)。课程号(CNo):CHAR(6);主码;非空。课程名(CName):CHAR(40);非空。先修课(CPNo):CHAR(6)。学分(Credit):INT。成绩(Grade):FLOAT;约束:0到100分。,.,2.创建表,方案二:表Course的外码:外码CPNo,参照表Course(主键表),参照码CNo(参照主码)表StudentCourse的组合主码:(SNo,CNo)表StudentCourse的外码:外码SNo,参照表Student(主键表),参照码Sno(参照主码)外码CNo,参照表Course(主键表),参照码CNo(参照主码),.,.,(1)使用对象资源管理器创建表,在图2-1中,展开数据库StudentDB,右击“表”,选择“新建数据表(N)”,在右侧编辑区的“表-dbo.Table_1”的下方依次输入表Student的数据项及其相应属性。即:1)列名下方:输入数据项的名称。如:SNo,SName,SSex,Sage,Coll。2)数据类型下方:选择相应的数据类型。如:char(10),int等。3)允许空下方:选择该数据是否允许为空值。4)在任意行上,右击(图2-1),选择“插入列(M)”,插入新数据项及其属性;选择“删除列(N)”,删除数据项;选择“设置主键”,把该属性设置成为主码,把多个数据项设置成组合主码,则只需先选择多行;取消主码,只需在设置主键的行上,右击,选择“移去主键Y”。5)在任意行上,右击(图2-1),选择“CHECK约束(O)”,设置该属性的用户定义约束(图2-4)。首先单击“添加(A)”或“删除(D)”,添加约束或者删除已有约束,然后在“表达式”右侧直接填写自定义约束表达式,或单击右侧的“.”,则弹出的窗口中填写用户定义约束表达式。然后在图2-4中单击“关闭”,.,(1)使用对象资源管理器创建表,6)在图2-1中,单击工具栏的保存按钮,在弹出的“选择名称”窗口中输入:Student,然后单击“确定”完成创建表Student。7)使用同样的方法创建数据表:Course和StudentCourse。在创建StudentCourse的过程中,参照约束和外码的创建方法如下:在任意行上,右击(图2-1),选择“关系”,在图2-5中,单击“添加(A)”或“删除(D)”,添加或者删除参照关系。然后选择“表和列规范”,并单击右侧“.”(图2-6)。在图2-6中,设置外码SNo以及主键表Student和参照码SNo。具体方法为:在“主键表(P):”下选择:Student,并在Student的下方选择参照码SNo。确定“外键表:”的下方的外码是SNo。另外,在下方CNo处选择:,最后单击确定。单击“关闭”完成参照约束设置。8)编辑数据表。在图2-1中,依次展开数据库和相应的表,在需要编辑的表上右击(如图2-9),然后选择“修改”、“重命名”和“删除”等对数据表进行编辑。,.,(2)使用查询分析器创建表,-打开数据库StudentDB:在使用数据库之前,需要先打开数据库。USEStudentDBCREATETABLEStudent(SNoCHAR(10)PRIMARYKEYNOTNULL,SNameCHAR(20)NOTNULL,SSexCHAR(2)CHECK(SSex=男ORSSex=女),SAgeTINYINTCHECK(SAge1ANDSAge100),CollCHAR(40),.,(2)使用查询分析器创建表,CREATETABLECourse(CNoCHAR(6)PRIMARYKEYNOTNULL,CNameCHAR(40)NOTNULL,CPNoCHAR(6),CreditINT,FOREIGNKEY(CPNo)REFERENCESCourse(CNo)CREATETABLECourse(CNoCHAR(6)PRIMARYKEYNOTNULL,CNameCHAR(40)NOTNULL,CPNoCHAR(6)REFERENCESCourse(CNo),CreditINT),.,(2)使用查询分析器创建表,CREATETABLEStudentCourse(SNoCHAR(10)NOTNULL,CNoCHAR(6)NOTNULL,GradeFLOAT,PRIMARYKEY(SNo,CNo),FOREIGNKEY(SNo)REFERENCESStudent(SNo),FOREIGNKEY(CNo)REFERENCESCourse(CNo)CREATETABLEStudentCourse(SNoCHAR(10)REFERENCESStudent(SNo)NOTNULL,CNoCHAR(6)REFERENCESCourse(CNo)NOTNULL,GradeFLOAT,PRIMARYKEY(SNo,CNo),.,1)向表添加新数据项,ALTERTABLEADD完整性约束例如:向Student增加“注册时间”属性,其数据类型为日期型。ALTERTABLEStudentADDSEnrollmentDATETIME例如:向Student的SName增加唯一性约束。ALTERTABLEStudentADDUNIQUE(SName)或者ALTERTABLEStudentADDCONSTRAINTUn_SNameUNIQUE(SName),.,2)修改表的数据项,ALTERTABLEALTERCOLUMN例如:修改Student的SAge的类型为SMALLINT。ALTERTABLEStudentALTERCOLUMNSAgeSMALLINT,.,3)删除表的数据项及其约束条件,ALTERTABLEDROPCOLUMN|CONSTRAINT例如:删除Student的数据项Senrollment。ALTERTABLEStudentDROPCOLUMNSenrollment例如:删除Student的SName的唯一性约束。ALTERTABLEStudentDROPCONSTRAINTUn_SName,.,4)删除表:DROPTABLE。,例如:删除Student。DROPTABLEStudent分析上述方法建立的数据库及其表,其结构和内容是什么?,.,2.2数据库的备份、还原和维护,备份和维护:对于已经建立的数据库,通常需要进行备份和维护。备份数据库:一旦数据库损坏,则可以使用备份数据库恢复。维护数据库:定期自动检查数据库的完整性、重新组织索引、更新统计信息和备份数据库等,确保数据库中数据的完整性和正确性,使数据库始终处于最佳运行状态。,.,2.2.1数据库的备份与还原,数据库的备份与还原是指在数据库没有脱离SQLServer环境的状态下,直接对数据库备份和还原。,.,1.备份数据库,在图2-1中,展开数据库,在需要备份的数据库上右击,然后选择“任务(T)”“备份(B),在图2-7中,选择需要备份的数据库、备份方式、备份时间、备份的目标磁盘设备和备份的目标文件,然后单击“确定”完成备份。备份StudentDB的选项与设置如图2-7所示。备份DB可以在查询分析器中,使用BACKUPDATABASE完成。即:BACKUPDATABASEStudentDBTODISK=C:StudentDBBackup1.bak,DISK=D:StudentDBbackup2.bak,.,2.还原数据库,在图2-1中,展开数据库,在需要还原的数据库上右击,然后选择“任务(T)”“还原(R)“数据库(D),在还原数据库窗口(类似图2-7)中,选择需要还原的目标数据库、目标时间点,还原的源设备和源备份文件,然后单击还原“选项”,并勾选“覆盖现有数据库”,最后单击“确定”完成还原。还原DB可以在查询分析器中,使用RESTOREDATABASE,即:RESTOREDATABASEStudentDBFROMDISK=C:StudentDBBackup1.bakWITHREPLACE,.,2.2.2数据库的分离与附加,数据库的分离与附加:首先把数据库从SQLServer环境中分离出来,然后再复制数据库。需要使用时,再利用附件功能把数据库。1.分离数据库在图2-1中,展开数据库,在需要分离的数据库上右击,然后选择“任务(T)”“分离(D),在分离数据库窗口中,选择相应的分离选项,然后单击“确定”完成分离。对于分离的数据库,可以进行复制操作;在需要使用时,可以使用数据库的附加功能,再把复制的数据库添加到SQLServer环境中。思考:没有分离的数据库,可以进行复制操作吗?为什么?分析分离数据库与备份数据库的区别和优缺点。2.附加数据库在图2-1中,右击“数据库”,然后选择“附加(A)”,在附加数据库窗口中,选择需要附加的数据库,然后单击“确定”完成附加。,.,2.2.3数据库的维护,必要性:DB在使用过程中,通常会发生违约操作或者故障,为了确保DB的完整性和一致性等,需要定期对DB进行指定的维护工作维护数据库:可以通过维护计划实现。可以使用维护计划向导很方便的创建维护计划。即:在图2-1中,展开“管理”,右击“维护计划”(如图2-9),选择“维护计划向导(W)”单击“下一步”,在选择目标服务器窗口中,输入计划名称、选择服务器和登录方式后单击“下一步”。在图2-8中,勾选需要执行的维护任务,单击“下一步”,然后按照向导选择需要维护的数据库,并进行相应的设置,最后单击“完成(F)”完成维护计划。维护计划,也可以通过右击“维护计划”(如图2-9),选择“新建维护计划(N)”实现。,.,2.3操作数据,在DB中,对表添加记录、修改记录、查询记录和删除记录等操作。对象资源管理器查询分析器实现,.,2.3.1利用对象资源管理器操作数据,在SSMS中,依次展开数据库和相应的数据表,在需要编辑的数据表上右击(如图2-9所示),然后选择“打开表(O)”,在右侧编辑区就会使用表编辑器打开表,以便实现对表内数据的编辑操作:(1)修改表记录:在表设计器中,对表内的记录数据进行修改。(2)添加新记录:在表设计器中,当编辑最后一个记录时,会在其下方自动添加新记录行,然后编辑新行添加新记录及其数据。(3)删除表记录:右击要删除的记录行,然后选择“删除”,在确认对话窗口中选择“是(Y)”进行删除,或者“否(N)”取消删除注意:在编辑数据表时,如果数据出现违约,则DBMS将会启动违约机制进行检查,并自动作相应的处理,或者输出提示信息。,.,2.3.2利用查询分析器操作数据,在查询分析器中输入如下语句,可以实现数据的添加、修改、查询和删除。,.,(1)添加记录,INSERTINTO(,)VALUES(,)例如:向表Student中添加新学生记录如下:学号:2008010109;姓名:武松;性别:男;年龄:20;学院:信息学院INSERTINTOStudentVALUES(2008010109,武松,男,20,信息学院)例如:向表StudentCourse中添加新学生记录如下:学号:2008010109;课程号:020101INSERTINTOStudentCourse(Sno,Cno)VALUES(2008010109,020101)提示:添加查询结果(多个元组)可以使用:INSERTINTO(,)SELECT语句,.,(2)修改表记录,UPDATESET=,=,WHERE例如:在表Student中,把学号为2008010101的姓名改为王五。UPDATEStudentSETSName=王五WHERESNo=2008010101例如:在表Student中,将所有学生的年龄增加1岁。UPDATEStudentSETSAge=SAge+1,.,(3)查询表记录,SELECT*|,FROMWHERE例如:查询表Student中学号为2008010101的学生姓名和年龄。SELECTSName,SageFROMStudentWHERESNo=2008010101例如:查询表StudentCourse的所有选课记录SELECT*FROMStudentCourse,.,(4)删除表记录,DELETEFROMWHERE例如:在表Student中,删除学号为2008010101的学生。DELETEFROMStudentWHERESNo=2008010101例如:在表StudentCourse中,删除所有选课。DELETEFROMStudentCourse提示:建立数据库和表的SQLServer完整代码,请参阅VcSqlStudentDB.sql。,.,2.4构建视图,对数据库StudentDB,如果需要查看学生的学号、姓名、性别、课程名、成绩和学院等信息,应该怎样实现?分析:需要查看的数据分布在3个表中,因此需要利用3个表,并根据查询的数据创建一个由3个表到查询的一个视图,通过视图实现查询到3个表的映射。视图是利用查询语句定义的,从一个或者多个表(即:基本表)中导出的虚表。只存放带有查询语句的视图的定义,不存放视图对应的数据;只有执行视图时,才从表中取出其相应的数据,因此视图的数据仍存放在基本表中(或由基本表的数据导出),而且随着基本表的变化而变化。即:视图是数据库整体逻辑结构中局部数据的临时体现。方法:对象资源管理器查询分析器,.,2.4.1利用对象资源管理器创建视图,(1)添加创建视图需要的表。(2)建立表与表之间的关联关系。系统会自动建立;可以编辑。(3)选择视图需要的数据项。(4)保存视图。具体方法:(1)添加表。在SSMS中,展开“数据库”,再展开需要创建视图的数据库,右击“视图”(如图2-10所示),然后选择“新建视图(N)”,在弹出的添加表对话窗口(图2-10左下角)中,添加创建视图需要的表,然后单击“关闭”,这时在右侧编辑区上面第1区中会出现添加的表,并且自动建立了关联关系(可以对关联关系进行编辑)。思考:分析S、C和StudentCourse中SNo和CNo冗余的必要性。(2)选择数据项。在右侧编辑区第2区中“列”的下方选择需要的数据项。这时在第1区系统会自动同步勾选相应的数据项,同时在第3区系统会自动给出创建视图的语句。(3)单击工具栏的运行按钮“!”,在下方第4区显示运行结果,运行正确后,保存视图。,.,.,2.4.2利用查询分析器创建视图,格式:CREATEVIEWASSELECT语句例如:利用数据库StudentDB,创建包含学号、姓名、课程名、成绩、性别和学院等信息的视图StuGrade。CREATEVIEWStuGradeASSELECTStudent.SNo,SName,CName,Grade,SSex,CollFROMStudent,Course,StudentCourseWHEREStudent.Sno=StudentCourse.SNoANDCourse.CNo=StudentCourse.CNo分析:视图本质上是一个查询,即把经常用到的查询定义成一个视图,也就是说视图实际上是一个虚表。在SQLServer2005中,视图和表是同等对待的,因此可以使用SELECT语句对视图进行查询。例如:查询视图StuGrade的所有信息。SELECT*FROMStuGrade思考:分析视图与表之间的关系。,.,2.5安全,在利用DBMS进行高效数据库管理的同时,还需要防止非法使用所造成的数据更改、破坏或者泄露,从而确保数据库的安全。SQLServer2005作为专业的世界级DBMS产品,完全支持DAC和MAC控制机制,并提供了一整套完善的数据库系统安全控制机制。,.,2.5.1创建Windows登录和SQLServer2005登录,登录SQLServer2005的用户首先必须是Windows的合法登录用户或者SQLServer2005的合法登录用户。(1)创建Windows的登录用户我的电脑的控制面板中的“用户帐户”,可以创建Win的登录用户。例如:给Windows创建两个合法登录用户HappyMary和HappyTom。(2)创建SQLServer2005的登录用户。在对象资源管理器中,展开“安全性”,右击“登录名”,选择“新建登录名(N)”(如图2-11所示(右下角)。在图2-11中,利用“常规”、“服务器角色”和“用户映射”等创建用户并设置属性。即:,.,.,2.5.1创建Windows登录和SQLServer2005登录,1)常规:搜索(可以把Win登录用户映射成为SQLServer2005的登录用户)或输入登录名、登录身份类型、登录密码、选择默认DB等。提示:不要使用“强制密码过期”,否则不能创建新用户。2)服务器角色:勾选授权的服务器角色。3)用户映射:映射并授权数据库及其角色成员身份。使用查询分析器创建SQLServer2005登录用户的方法如下:CREATELOGINWITHPASSWORD=密码例如:给SQLServer2005创建两个合法的登录用户HappyJone和HappySmith。CREATELOGINHappyJoneWITHPASSWORD=666CREATELOGINHappySmithWITHPASSWORD=666(3)重命名或者删除SQLServer2005的登录用户在SSMS的对象资源管理器中,依次展开“安全性”“登录名”,右击需要重命名或者删除的用户,然后选择“重命名(M)”或者“删除(D)”。或者使用DROPLOGIN语句。,.,2.5.2创建数据库用户与角色,如果登录SQLServer2005之后,需要继续访问系统中的数据库,还必须是一个数据库用户。数据库用户可以从现有的Windows登录用户或者SQLServer2005登录用户中映射过来。,.,(1)使用对象资源管理器创建数据库用户与角色,在SSMS的对象资源管理器中,展开“数据库”,然后选择并展开指定的数据库(例如:StudentDB),右击“安全性”,选择“新建(N)”“用户(U)”(如图2-11(右下角)。在“数据库用户-新建”窗口(参考图2-11)中,利用“常规”输入数据库用户名,并选择或者输入相应的登陆名(Windows或者SQLServer2005),然后设置相应的属性。如果选择“新建(N)”“数据库角色(U)”,则可以按照同样的方法创建数据库角色。,.,(2)使用查询分析器创建数据库用户与角色,CREATEUSERFORLOGIN其中:必须是Win或SQLServer2005的合法登录名。例如:在SQLServer2005中,给数据库StudentDB创建一个数据库用户HappyTomer,其登录身份是Windows的合法登录HappyTom;同时创建一个数据库用户HappyJone,其登录身份是SQLServer2005的合法登录HappyJone。即:CREATEUSERHappyTomerFORLOGINZJGSU-HAPPYYOUHappyTomCREATEUSERHappyJoneFORLOGINHappyJone提示:如果要想成功运行第一个语句,请先创建一个名为HappyTom的Windows登录用户,并修改服务器名称ZJGSU-HAPPYYOU,而且附加数据库StudentDB.MDF。运行第二个语句,请先创建一个名为HappyJone的SQLServer2005登录用户。,.,(2)使用查询分析器创建数据库用户与角色,如果需要创建数据库角色可以使用CREATEROLE语句。即:CREATEROLEAUTHORIZATION其中是DB用户或DB拥有者(DBOwner)例如:在SQLServer2005中,给数据库StudentDB创建一个数据库角色Tom,其数据库用户是HappyTomer;同时创建一个数据库角色Jone,其数据库用户是数据库StudentDB的拥有者DBO。即:USEStudentDBCREATEROLETomAUTHORIZATIONHappyTomerCREATEROLEJone,.,(3)删除SQLServer2005的数据库用户与角色,在对象资源管理器中,依次展开“安全性”“登录名”,右击需要删除的用户或者角色,然后选“删除(D)”。或DROPROLE语句。修改数据库用户和角色可以分别使用ALTERUSER语句和ALTERROLE语句。用法与CREATEUSER和CREATEROLE雷同。例如:在SQLServer2005中,删除数据库用户HappyTomer和HappyJone。USEStudentTestDBDROPUSERHappyTomerDROPUSERHappyJone,.,2.5.3SQLServer2005的权限控制,在SQLServer2005中,只有授权用户才能执行语句或者对保护对象进行操作。否则将拒绝执行Transact-SQL语句或者拒绝对数据库对象进行操作。用户权限可以在创建用户时直接授权,也可以使用SQLServer2005支持的语句GRANT、DENY和REVOKE
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 天津水务考试试题及答案
- 2025年供应室消毒试题及答案
- 2025年公需科目广西发展新机遇考题及答案
- 可持续服务全球化-洞察及研究
- 紧缺性资产管理办法
- 人防设备维护管理办法
- 专业券商资产管理办法
- 蜂鸣器生产管理办法
- 衢州民工工资管理办法
- 个人开具发票管理办法
- 2025年乡镇残联招聘残疾人专职工作者试题集及参考答案解析
- 第13课 美丽中国我的家(教学课件)小学二年级上册 统编版《道德与法治》新教材
- 2025年铜陵枞阳国有资本投资控股集团有限公司公开招聘工作人员8名备考练习试题及答案解析
- 2025年生物结业考试卷及答案
- 塔吊出租安全协议书范本
- 2025年国家统一司法考试真题及答案
- 绿色矿山培训课件
- 2025四川宜宾五粮液集团旗下环球集团招聘75人笔试参考题库附答案解析
- 2025-2026学年人教版(2024)小学数学三年级上册(全册)教学设计(附目录P296)
- 2025年山东省临沂市、枣庄市、聊城市、菏泽市、济宁市中考语文试题解读
- 《人为因素与航空法规》课件(共九章)
评论
0/150
提交评论