7-2-5

来源:百度文库 编辑:神马文学网 时间:2024/04/28 03:14:49


7.2.1 企业管理器概述
1.企业管理器的功能
(1)企业管理器(Enterprise Manager)是用户管理SQL Server 2000的主要管理工具和图形界面。
(2)在企业管理器中可以完成几乎所有的管理工作,如管理登录帐号、数据库用户和权限,创建和管理数据库,创建和管理表、视图、存储过程以及用户自定义数据类型等。
(3)用户以图形化的方法在企业管理器中进行操作,企业管理器向SQL Server发送T-SQL命令;同时,它也检查SQL Server,显示相关的数据和配置信息以便查看。
(4)对于具体由多个服务器的组织来说,企业管理器具有一个重要的特性,即它能够连接或者注册多个SQL Server的实例,从而减少管理不同服务器的工作。
2.企业管理器的界面

(1)企业管理器提供遵从Microsoft管理控制台(MMC)的用户界面。
(2)单击左边控制台的“+”号可以展开当前目录。
(3)单击“SQL Server组”前面的“+”可以展开目录显示出已有的SQL Server注册,默认情况下会有一个(local)(Windows NT)注册。
(4)右击“SQL Server注册”后在快捷菜单中选择“新建SQL Server注册”可以打开“注册SQL Server向导”来注册新的SQL Server服务器。
(5)使用企业管理器可以管理注册过的所有SQL Server。
3.编辑SQL Server注册属性

(1)右键单击已注册的SQL Server服务器,在快捷菜单中选择“编辑SQL Server注册属性”选项可以弹出SQL Server注册属性对话框。
(2)这里可以修改建立连接和进行用户验证所需要的信息。另外比较重要的一项是“显示系统数据库和系统对象”复选框,启用或禁止这一选项将决定在查看表、视图和存储过程时是否显示系统对象。
4.设置服务器属性
在一个服务器上右击后在快捷菜单中选择“属性”项,将会打开“服务器属性”对话框,在这个对话框中集中收集了所有必要的服务器配置选项。
5.展开企业管理器

单击已有的SQL Server注册前面的“+”,如果能够展开目录说明该服务器连接成功,否则表示连接失败。 7.2.2 数据库的操作
1.创建数据库
(1)使用企业管理器来创建新的数据库
   ①选择“新建数据库”命令

   a.首先,右键单击左边控制台中的“数据库”,选择“新建数据库”。
   ②填写数据库参数
   a.在弹出的数据库属性对话框中,“常规”选项卡中填入数据库名称,本例中为student。

   b.然后选择“数据文件”选项卡,输入要使用的数据文件名称、路径和初始大小,一般使用默认值即可,在对话框下面可以设置数据文件的增长方式和速率。

   c.然后选择“事务日志”选项卡,设置日志文件和增长方式等。

   d.设置完成后单击“确定”按钮创建新的数据库。
(2)使用向导来创建数据库

   ①点击“工具”菜单中的“向导”菜单项,选择“创建数据库向导”
   ②然后按照向导一步步设置即可创建新的数据库。
2.修改数据库
(1)首先选中要修改的数据库名。
(2)右键单击后在快捷菜单中选择“属性”。
(3)在各个选项卡可以修改数据库的创建时的设置和其它参数。
3.删除数据库
(1)首先选中要删除的数据库名。
(2)右键单击后在快捷菜单中选择“删除”。
(3)然后在弹出的确认对话框中选择“是”按钮即可。
4.收缩数据库
(1)当数据库文件较大而数据较少时,需要对数据库进行收缩。
(2)方法是右键单击数据库名,在快捷菜单中选择“所有任务”中的“收缩数据库”。
5.更改数据库名称
(1)在数据库的属性对话框中无法修改数据库名称,可以使用T-SQL命令sp_renamedb
(2)Sp_renamedb的语法为sp_renamedb oldname, newname
(3)例如,将“student”数据库修改为“student_db”:Exec sp_renamedb ‘student’ , ‘student_db’ 7.2.3 表的操作
1.创建数据表

(1)首先选择要建表的数据库。
(2)在子项的“表”上右击,在快捷菜单中选择“新建表”。
(3)这时会弹出表设计器,可以设计表的字段。
(4)要创建表的主键,只要选中要设置的行,右键单击后在快捷菜单中选上“设置主键”即可。
(5)设计完毕后关闭该对话框,保存并输入表名student。
2.修改表
(1)右键单击要修改的表。
(2)在快捷菜单中选择“设计表”。
(3)在弹出的表设计器中修改即可,方法与创建表时相同。
(4)修改结束后保存即可。
3.删除表
(1)右键单击要删除的表。
(2)在快捷菜单中选择“删除”即可。
4.数据的查看
(1)右键单击表,在快捷菜单中选择“打开表”,然后选择“返回所有行”可以查看表中的全部数据。

(2)选择“返回首行”后指定数字n可以查看表中开头的n行数据。
(3)选择“查询”后会弹出查询设计器,它允许用户以图形化的方式选择要输出的列和查询条件,自动产生T-SQL语句,选择好后单击右键,然后在弹出的快捷菜单中单击“运行”按钮可以得到查询结果。

5.数据的修改
(1)要增加、修改或者删除表中数据。
(2)右键单击表后在快捷菜单中选择“打开表”,“返回所有行”。
(3)然后在显示出的数据上进行修改即可。
(4)关闭后会自动保存。 7.2.4 索引
1.索引的作用
SQL Server允许用户对表中的列建立索引以提高查询效率。
2.建立索引的方法
(1)右键单击表。
(2)在快捷菜单中选择“所有任务”,“管理索引”可以打开索引管理器对话框。

(3)单击“新建”或者“编辑”按钮,会分别打开“新建索引”和“编辑现有索引”对话框,在这两个对话框中可以对所有索引选项进行设置。

3.使用表设计器中的表属性对话框管理索引
(1)首先选中表。
(2)右键单击后在快捷菜单中选择“设计表”来打开表设计器。
(3)然后右键单击在快捷菜单中选择“属性”打开表属性对话框。

(4)在这里可以很方便的使用和管理索引,对索引所做的修改会在关闭对话框时自动保存。 7.2.5 视图
1.视图的实质
(1)由于视图只是存储的SQL select,所以创建一个视图实际就是编写select语句。
(2)用户可以在查询分析器中直接以T-SQL语句创建视图。
(3)也可以在企业管理器中以图形化的方式创建视图。
2.创建视图
(1)在数据库的“视图”子项上单击右键。
(2)在弹出的快捷菜单中选择“新建视图”会弹出视图设计器。视图设计器从上至下分为四个区域,分别是视图的基准表格区,列定义区,SQL语句区和运行结果区。

(3)在基准表格区使用快捷菜单中的“添加表”会弹出“选择表/视图”对话框,选定表格后单击“添加”按钮就可以引入已有的数据表、视图或函数到基准表格区,直到单击“关闭”按钮为止。如果发现选择的表格不正确,可以单击该表格,然后按下Delete键或者右击该表格并选择快捷菜单中的“删除”选项,即可将表格从基准表格区中删除。
(4)在基准表格中选取视图中需要的列,列定义区中会自动添加所选取的列。也可以在列定义区用可视化的方式设计列在视图中显示的名称和列约束。在选择表格或对列做设计时,SQL语句区会自动生成相应的SQL语句。
(5)右击然后在快捷菜单中选择“运行”选项可以在运行结果区看到视图的结果,确认无误后保存视图。

3.修改视图
在该视图的快捷菜单中选择“设计视图”,就可以使用视图设计器来修改视图定义。 7.2.6 存储过程
1.存储过程概述
(1)存储过程的作用
   ①存储过程是存放在服务器上的预先编译好的SQL语句。
   ②存储过程在第一次执行时进行语法检查和编译,编译好的存储过程在高速缓存中用于后续调用。
   ③这样就可以使存储过程执行时更加迅速,更加高效。
   ④存储过程可以带有输入和输出的参数。
(2)存储过程的优点
   ①提供了安全机制
   a.存储过程提供的安全机制可以只给用户授予访问存储过程的权限,而不授予用户访问存储过程中涉及到的表或视图的权限。
   b.这样就可以实现让用户通过存储过程操作数据库中的数据,而不让用户直接操作与存储过程相关的表。
   c.从而保证数据库中数据的安全性。
   ②改进了执行性能
   a.存储过程在第一次执行后,会在SQL Server的缓冲区中创建查询树。
   b.这样在第二次执行该存储过程时,就无需进行预编译。
   c.从而改进系统的执行性能。
   ③减少了网络流量
   a.存储过程是存放在服务器上的预先编译好的SQL语句组并在服务器端运行。
   b.这样使用存储过程时,在服务器和客户端之间网络上需要传输的只有用来执行存储过程的命令和存储过程执行完毕后返回的结果。
   c.用户无需在网络上发送上百个SQL语句,或是将众多数据从服务器端下载至客户端后再进行处理。
   d.从而大大减少了网络负载。
   ④增强了代码的重用性
   a.存储过程可以增强代码的可重用性,提高开发效率。
   b.一个存储过程可以视为用户为完成某个特定功能而编写的一个功能模块。
   c.用户或其他用户可以在自己其它的存储过程中引用该存储过程。
   d.从而实现代码的重用性,加快应用的开发速度,提高开发的质量和效率。
2.创建存储过程
(1)创建存储过程的方法
   ①可以在查询分析器中执行T-SQL语句。
   ②也可以在企业管理器创建。
(2)创建存储过程的步骤
   ①首先展开企业管理器中左边控制台的数据库项。
   ②然后选中数据库(本例中使用pubs数据库)下面的“存储过程”。
   ③右击然后在快捷菜单中点击“新建存储过程”,就会弹出“存储过程属性”对话框。

   ④用户可以在文本框中输入要创建的存储过程的T-SQL代码。
(3)创建存储过程实例
   ①功能
  选出pubs数据库中authors表中的几列。
   ②步骤
   a.新建存储过程。
   b.单击“检查语法”按钮可以检查编写的T-SQL语句是否合法。

   ③使用查询分析器测试
   a.创建好存储过程后可以在查询分析器中测试一下。
   b.执行存储过程的命令为exec procedure_name。
   c.本例中,在查询分析器中输入下面代码。
use pubs
exec proc1
go    d.执行后可以看到该存储过程的返回结果。
3.修改存储过程
(1)找到要修改的存储过程。
(2)双击或者在快捷菜单中选择“属性”选项,会弹出“存储过程属性”对话框。
(3)直接修改文本后保存即可。
4.删除存储过程
(1)找到要删除的存储过程。
(2)在快捷菜单中选择“删除”选项。
(3)然后点击“全部除去”按钮即可。
5.带参数的存储过程
(1)新建一个存储过程proc2,它包括一个输入参数lname和一个输出参数phone,T-SQL代码如下。
CREATE PROCEDURE proc2
@lname varchar(40),
@phone varchar(12) OUTPUT
AS
select @phone=phone from authors where au_lname=@lname
(2)保存后在查询分析器中输入下面的T-SQL代码来执行该存储过程,输出参数后需要加上OUTPUT关键字来标识。
use pubs
declare @phone varchar(12)
exec proc2 'White', @phone OUTPUT
select phone=@phone
go 7.2.7 触发器
1.触发器的基本知识
(1)触发器的作用
   ①触发器是SQL Server提供给程序员和数据分析员来保证数据完整性的一种方法,它是与表事件相关的特殊的存储过程。
   ②触发器不能被直接执行,它们只能为表上的insert、update、delete事件所触发。
   ③此外触发器也不能够传递或接受参数。
   ④假如触发器导致的一个请求失败的话,SQL Server将拒绝信息更新,并且对那些倾向于事务处理的应用程序返回一个错误消息。
   ⑤触发器最普遍的应用是实施数据库中的商务规则,当然在维护引用完整性方面,外键要比触发器更快,但触发器能够维持那些外键不能处理的复杂关系。
(2)触发器的说明
   ①触发器的开销非常低,运行触发器所占用的时间主要花在引用其它存于内存或磁盘上的表上。
   ②在SQL Server中,触发器只对每一个DML操作触发一次,无论一个DML操作一共影响了多少行。
   ③触发器可以实现比CHECK约束更复杂的数据完整性,在CHECK约束中不允许引用其它表中的列来完成检查工作,而触发器则可以引用其它表中的列来完成数据完整性的约束。使用触发器还可以使用自定义的错误信息,实现多表的级联修改等功能。
2.创建触发器
(1)触发器是与数据表相关联的,要创建一个触发器,首选选中数据表。
(2)右击后在快捷菜单中选择“所有任务”、“管理触发器”就会弹出触发器属性对话框。

(3)用户可以在文本框中输入要创建的触发器的T-SQL代码。
3.修改和删除触发器
(1)右击触发器所在的表。
(2)在快捷菜单中选择“所有任务”,“管理触发器”。
(3)在弹出的触发器属性对话框中,可以通过名称组合框选择已有的触发器。
(4)在文本框中修改后点击“应用”按钮来保存修改。
(5)点击“删除”按钮可以删除该触发器。 7.2.8 用户自定义函数
1.用户自定义函数的说明
(1)用户自定义函数的作用
   ①在SQL Server中,为了加快开发速度,可以将一个或多个T-SQL语句组成的子程序定义成函数,从而实现代码的封装和重用。
   ②SQL Server 2000允许用户创建自己的用户自定义函数。
(2)用户自定义函数的优缺点
   ①用户自定义函数同时具有视图和存储过程的优点,它可以像视图一样用在select语句的from子句中,而且它还可以接收参数。
   ②在性能方面它与存储过程类似,也是预先经过编译和优化的。
   ③它的主要缺点是牺牲了可移植性。
(3)三类用户自定义函数
   ①返回单值的标量函数:可以返回单个数据值。
   ②返回可更新数据表的内嵌表值函数:包含单个SELECT语句,且该语句可更新,返回可更新的数据表。
   ③返回不可更新数据表的多语句表值函数:包含多个SELECT语句,或包含一个不可更新的SELECT语句,返回不可更新的数据表。
2.创建返回单值的标量函数
(1)用企业管理器创建用户自定义函数,首先选中左边控制台中数据库下面的“用户定义的函数”。
(2)右击后在快捷菜单中选择“新建用户定义的函数”选项。

(3)在文本框中输入建立自定义函数的T-SQL语句后点击“确定”按钮即可完成创建。
3.创建返回可更新数据表的内嵌表值函数
(1)内嵌表值函数返回的是表,它非常类似于视图,都包含有一条存储的select语句。
(2)但是内嵌表值函数还具有视图所没有的两个优点:预先编译和可以使用参数。
4.创建返回不可更新数据表的多语句表值函数
(1)多语句表值函数既可以像标量函数那样包含复杂的代码,也可以像内嵌表值函数那样返回一个结果集。
(2)这类函数会创建一个表变量,并使用代码对它进行填充,最后返回这个表变量。
(3)多语句表值函数的主要优点是:可以用代码产生复杂的结果集,然后方便的在select语句中使用它。
(4)因此,可以使用这些函数来替代返回结果集的存储过程。
5.修改和删除用户自定义函数
(1)右击已有的用户自定义函数,在快捷菜单中选择“属性”选项会弹出用户定义函数属性对话框,可以在该对话框中修改函数定义。
(2)右击已有的用户自定义函数,在快捷菜单中选择“删除”选项可以删除该函数定义。 7.2.9 备份恢复与导入导出
1.备份数据库概述
(1)备份数据库就是将数据库数据和与数据库正常运行有关的信息保存起来,以备恢复数据库时使用。
(2)备份数据库的主要目的是为了防止数据的丢失,另外它也可以作为数据转移的一种方式。
2.备份设备
(1)SQL Server备份数据库是将数据库备份到备份设备上,一般来说是磁盘上的文件。
(2)要创建备份设备,需要展开企业管理器左边控制台的SQL Server,选择“管理”下面的“备份”子项。
(3)右击后在快捷菜单中选择“新建备份设备”后会弹出备份设备属性对话框。

(4)输入备份设备名称后可以修改备份文件的路径名。
(5)单击确定按钮后完成创建。
3.备份数据库
(1)右击要备份的数据库,在快捷菜单中选择“所有任务”“备份数据库”,会弹出SQL Server备份对话框。

(2)使用“添加”按钮会弹出选择备份目的对话框。

(3)在这个对话框中,可以直接指定备份文件名,也可以选择已经建好的备份设备。
(4)选好备份目的后单击备份对话框的“确定”按钮就可以完成备份操作。
4.还原数据库
(1)右击要还原的数据库,在快捷菜单中选择“所有任务”“还原数据库”,会弹出还原数据库对话框。

(2)设置好要还原的备份后,单击“确定”按钮就可以完成还原过程。
5.导入导出
(1)导入导出的作用
  导入(Import)和导出(Export)数据对于数据库而言是一个重要的工具,它可以完成多个数据库之间的数据转换和转移。
(2)导入导出的方法
  使用导入导出功能可以通过导入导出向导,也可以在要导入导出的数据库或数据表上右击并在快捷菜单中选择“所有任务”“导入数据”或“导出数据”。
(3)导入导出实例
   ①这里以将pubs中的表导出到temp数据库为例,首先新建一个temp数据库,右击pubs数据库选择“所有任务”“导出数据”,然后点击“下一步”,会出现DTS导入/导出向导的选择数据源对话框,这里可以设置数据源的服务器和数据库。

   ②单击“下一步”按钮后出现选择目的对话框,在数据库下拉条中选择temp数据库。

   ③在指定表复制或查询对话框中选择“从源数据库复制表或视图”,单击“下一步”按钮。
   ④在选择源表和视图对话框中选择要复制的表和视图,这里单击“全选”按钮来复制全部内容。

   ⑤单击“下一步”按钮后可以选择是否立即运行,这里均采用默认值一步步点下去即可完成导出数据的功能。 7.2.10 安全管理 1.安全管理概述
(1)SQL Server的安全管理方法
   ①安全性对于任何一个数据库管理系统来说都是至关重要的。
   ②SQL Server的安全性是基于用户、角色、对象和权限的概念的。
(2)用户访问数据库的三个认证过程
   ①身份验证:第一个认证过程是身份验证,使用登录帐号来标识用户,身份验证只验证用户连接到SQL Server数据库服务器的资格,即验证该用户是否具有连接到数据库服务器的“连接权”。
   ②访问数据库时验证:第二个认证过程是当用户访问数据库时,他必须具有对具体数据库的访问权,即验证用户是否是该数据库的合法用户。
   ③操作数据库时验证:第三个认证是当用户操作数据库中的数据或对象时,他必须具有所要进行操作的操作权。
2.SQL Server的验证模式
(1)SQL Server的两种身份验证模式
   ①Windows身份验证模式。
   a.在Windows身份验证模式中,用户首先登录Windows,然后再登录到SQL Server,这时无须再提供帐号和密码。
   b.系统会从用户登录到Windows时提供的用户名和密码中查找当前用户的登录信息,以判断其是否是SQL Server的合法用户。
   ②混合验证模式。
   a.混合验证模式表示SQL Server接受Windows授权用户和SQL授权用户。
   b.如果不是Windows操作系统的用户希望也能使用SQL Server,则应该选择混合验证模式。
   c.如果在混合验证模式下使用SQL授权用户登录SQL Server,则用户必须提供登录名和密码,因为SQL Server必须要用这些信息验证用户的身份。
(2)在企业管理器中设置SQL Server的身份验证模式的方法
   ①首先选择要设置的SQL Server,如local(Windows NT)。
   ②右击并在快捷菜单中点击“属性”选项,在弹出的对话框中选择“安全性”标签。

   ③在其中的“身份验证”部分,第一个选项“SQL Server和Windows”代表混合验证模式,第二个选项“仅Windows”代表Windows验证模式。
   ④选定后单击“确定”按钮,如果要使设置生效需要重新启动服务器。
3.登录帐号
(1)要增加新的登录帐号,首先展开企业管理器左边控制台的SQL Server,选择“安全性”下面的“登录”。
(2)右击后点击快捷菜单中的“新建登录”,会弹出登录属性——新建登录对话框。

(3)在这个对话框中输入登录名称,选择验证类型,如果是SQL Server身份验证模式,需要输入密码。在下面的默认设置中可以选择默认使用的数据库。
(4)在“服务器角色”选项卡中可以设置该登录帐号属于的服务器角色。
(5)在“数据库访问”选项卡中可以设置该登录帐号允许访问的数据库。
4.角色
(1)角色的概念
  在数据库中,为了便于对用户及权限的管理,可以将一组具有相同权限的用户组织在一起,这一组具有相同权限的用户就称为角色(Role)。
  在SQL Server 2000中,角色分为服务器角色和数据库角色。

(2)系统中预定义的角色
   ①SQL Server中只包含了固定的、预定义的服务器角色,用户不能新建服务器角色。
   ②这些角色具有完成特定的、与服务器相关的管理任务所需要的权限。
   ③一个用户可以属于多个角色。
   ④在企业管理器左边控制台中SQL Server下面的“安全性”“服务器角色”中可以看到系统的服务器角色。
(3)用户自定义角色的作用
   ①用户自定义的角色属于数据库一级。
   ②用户可以根据实际的工作职能情况定义自己的一系列角色,并给每个角色授予合适的权限。
   ③有了角色就不用直接管理每个具体的数据库用户的权限,而只需将数据库用户放置到合适的角色即可。
   ④当工作只能发生变化时,只要更改角色的权限,而无需更改角色中的成员。
(4)新建自定义角色
   ①要新建一个数据库角色,首先在企业管理器中选中该数据库,如pubs。
   ②然后选择下面的“角色”项。
   ③右击后在快捷菜单中选择“新建数据库角色”。
   ④会弹出数据库角色属性——新建角色对话框。

   ⑤输入角色名称,本例中是testrole,使用“添加”按钮可以添加属于该角色的用户。
   ⑥单击“确定”按钮完成新建角色。
(5)修改自定义角色的权限
   ①要修改已有角色的权限,右击该角色后在快捷菜单中选择“属性”,然后点击“权限”按钮。
   ②会弹出数据库角色属性——权限对话框。

   ③在这里可以设置该角色对各个数据表所具有的权限。
(6)删除自定义角色
   ○要删除已有角色,只需要右击该角色后在快捷菜单中选择“删除”选项。