




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
物业信息管理
wuye
xinxi
guanli
李力主编教育部人才培养模式改革与开放教育试点物业管理专业系列教材技术基础篇Ji
shu
ji
chu
pian物业信息管理物业信息管理 第四章数据库技术基础第四章数据库技术基础[内容提要]
本章主要讲述数据库的相关概念、数据库系统及基本操作。介绍SQLServer2000数据库系统的安装等内容。重点掌握:数据库的相关概念、数据安全概念和关系型数据库的体系结构,SQLServer2000数据库的基本操作。掌握:数据库系统与物业管理信息系统之间的关系,能够对SQLServer2000数据库进行简单操作。了解:数据库技术的的基本概念,了解SQLServer2000数据库编程环境。第四章数据库技术基础4.1数据库系统概论4.2SQLServer概述4.3SQLServer安全管理4.4Transact-SQL语言基础4.5
数据库基本操作物业信息管理 第四章数据库技术基础4.1数据库系统概论
4.1.1数据库系统
4.1.2数据库系统结构
4.1.3数据库维护物业信息管理 第四章数据库技术基础4.1数据库系统概论1、数据库系统的组成◆数据库系统通常由硬件支持系统、数据库、软件支持系统和数据库管理人员组成。(思考题1)(1)数据库◆数据库(Database,DB):是以一定的组织方式存储在计算机外部存储设备中的相关数据的集合。(思考题1)物业信息管理 第四章数据库技术基础4.1数据库系统概论4.1.1数据库系统(2)硬件支持系统◆硬件是数据库系统的工作平台。硬件包括计算机主机、外部存储器、数据通道、输入和输出设备等。(3)软件支持系统◆软件支持系统:包括操作系统、数据库及数据库管理系统,各种实用程序和各种语言的编译程序等。◆数据库管理系统(DBMS)是数据库系统的核心软件,可实现对数据库的建立、操作、控制和维护等管理。(4)数据库管理人员◆数据库管理人员是指使用、维护、开发数据库系统的相关人员。物业信息管理 第四章数据库技术基础4.1数据库系统概论3、数据库系统在管理信息系统中的作用◆当前的数据处理大致可划分为两大类型:★操作型处理(事务处理):是对数据库联机的日常操作,主要是对企业内部进行管理,为企业的特定应用服务。◆分析型处理(信息型处理):对数据库中数据进行分析,从中提取有用的信息,为企业的发展服务。物业信息管理 第四章数据库技术基础4.1数据库系统概论4.1.2数据库系统的结构1、数据描述实体:客观存在的并可相互区别事物的称为实体。属性:用来表明实体特征的。属性值:区分属性特征的值。取值域:属性所取值的范围称为取值域。记录:相应于每一实体的数据。字段(数据项):标记实体属性的符号集。文件:同类记录的集合称为文件。关键词:能惟一标识文件中每个记录的一个或多个字段。称为文件的关键字。物业信息管理 第四章数据库技术基础4.1数据库系统概论物业信息管理 第四章数据库技术基础4.1数据库系统概论2、数据模型◆数据模型:是一组描述数据库的概念,这些概念可精确地描述数据和数据之间的关系。数据库管理系统都是建立在某种模型基础上的。(1)数据模型的组成◆数据模型通常由数据结构、数据操作规程和完整性约束三部分组成。(2)数据模型的种类(思考题2)◆在数据库管理系统中,描述数据库中数据的逻辑结构的数据类型有四类,它们分别是:层次模型、网状模型、关系模型和面向对象模型。
①层次模型:层次模型是一种树形结构,用树形结构表示实体及实体类型之间的联系层次模型是以记录类型为节点有向树。最上一层的节点称为根节点,上一层节点称为下一层节点的父节点,反之称为子节点。如下图所示。物业信息管理 第四章数据库技术基础4.1数据库系统概论公司总经理生产部经理车间主任销售部经理代理销售商开发部经理生产部生产车间开发部销售部◆层次模型具有如下特点:有一个记录类型没有节点,其他记录类型有且仅有一个父节点。注意:层次模型可以表示一对一或一对多联系,但不能表示多对多联系。物业信息管理 第四章数据库技术基础4.1数据库系统概论②网状模型:用网状结构表示实体及其之间联系的模型称为网状模型。如图所示:网状模型有如下特点: ★允许有一个以上的节点无父节点。 ★一个子节点可以有多个父节点。 ★两个节点之间可以有两种或多种联系。学校教师课程班级③关系模型:用二维表结构来表示实体及其之间联系的模型称为关系模型。物业信息管理 第四章数据库技术基础4.1数据库系统概论房号业主姓名户型建筑面积管理费水电费安泰楼501张三四房两厅156.36120.00204.60广泰楼601李四三房两厅126.8098.00185.68广泰楼602陈强四房两厅158.60122.00210.36关系模型特点:每一个二维表格就可构成关系模型,表中每一列对应实体的一个属性值。每行形成一个由全体属性组成的多元组,与一个特定的实体相对应。④面向对象模型:它是一种以对象为基础,以事件来驱动对象执行的技术。对象是一个包括状态和行为并被封装起来的整体。3、系统结构的分类(1)数据库系统的模式结构数据库系统具有三级模式的结构特征,即
★对应于用户级的一个或多个子模式;
★对应于全局逻辑级的模式;
★对应于物理存储级的存储模式。物业信息管理 第四章数据库技术基础4.1数据库系统概论(2)数据库系统的体系结构◆数据库系统可分为单用户结构、主从式结构、分布式结构和客户/服务器结构。★单用户数据库系统:整个数据库系统都集中在一台计算机上,由一个用户单独使用,不能实现数据共享。★主从式结构数据库系统:是指一台主机带多个终端的多用户结构数据库系统。★分布式结构数据库系统:数据库中的数据在逻辑上是一个整体,但分散在网络的不同节点上。★客户/服务器数据库系统:网络中某个节点上的计算机专门用于执行数据库管理系统功能,称为服务器;其他节点上的计算机则支持用户各种应用,称为客户机。物业信息管理 第四章数据库技术基础4.1数据库系统概论4.1.3数据库维护数据保护也称为数据控制。数据保护主要包括:数据的安全性、完整性、并发控制和数据库恢复。
1、安全性数据库的安全是指保护数据库以防不合法的使用所造成的数据泄露、更改或破坏。数据库系统安全保护方法一般有:(1)规定用户对数据的操作权限;(2)用户密码编码数据;(3)使用日志监视数据库活动;(4)在查询的路径上加以限制。物业信息管理 第四章数据库技术基础4.1数据库系统概论2、完整性数据库的完整性是为了防止数据库被恶意破坏和非法存取,以保证数据的正确性和相容性。DBMS用一定的机制来检查数据库中的数据是否满足规定条件,这种条件在数据库中称为完整性约束条件。(1)数值约束和结构约束;(2)数据正确性校验。物业信息管理 第四章数据库技术基础4.1数据库系统概论物业信息管理 第四章数据库技术基础4.1数据库系统概论3、并发控制所谓的并发控制就是要用正确的方式控制并发操作,使一个用户事务的执行不受其他事务的干扰,避免造成数据的不一致。◆例如:火车票售票服务系统中,可能出现多个售票点在某一时刻同时访问数据库的同一数据。◆并发操作会出现如下三种情况:(1)只读数据①一个用户修改了数据造成数据不一致;②两个以上用户修改同一数据会造成覆盖产生数据不一致。并发控制的方法一般是加锁和发通知。(2)封锁机制;(3)发通知。4.2SQLServer概述
4.2.1SQLServer2000简介
4.2.2SQLServer2000常用工具及其功能
4.2.3SQLServer数据库
4.2.4SQLServer2000安装物业信息管理 第四章数据库技术基础4.2SQLServer概述
4.2.1SQLServer2000简介SQLServer2000是一个客户机/服务器体系结构的关系型数据库管理系统。SQLServer能够对服务器端的数据库进行管理和维护,并能保证数据之间的完整性和一致性;物业信息管理 第四章数据库技术基础4.2SQLServer概述◆运行在客户端的客户应用程序负责处理各种业务信息,并向用户显示数据;客户应用程序可以运行在一台或多台客户机,当客户应用程序需要访问数据库时,可通过网络,向服务器发出请求,服务器根据各种验证规则,对客户的请求进行分析和处理,并将结果返回给客户机。◆
SQLServer2000使用T-SQL作为它的数据库查询和编程语言。使用户能使用T-SQL访问数据,查询、更新和管理SQLServer关系数据库系统。4.2.2SQLServer2000常用工具及其功能物业信息管理 第四章数据库技术基础4.2SQLServer概述1、SQLServer服务◆SQLServer2000由三种基本的服务组成,包括:MSSQLServer,SQLserverAgent和MSDTC。(1)MSSQLServer是SQLServer引擎,它主要用于服务器上的数据库的管理及所有数据库命令的处理,同时它还能保证数据的一致性和完整性,并对多个用户同时访问相同的数据进行控制与调整。(2)SQLServerAgent是SQLServer自动化引擎,它与SQLServer一起工作以完成各种管理任务,它负责创建和管理本地的多服务器的作业调度与执行管理、报警管理和复制管理。(3)MSDTC:提供了多服务器的自动事务处理,协调客户端的事务中不同数据源之间的事务处理。
2、SQLServer管理工具(1)SQLServer企业管理器(思考题7)◆它是SQLServer的管理控制台,允许用户对SQLServer和SQLServer对象的配置和管理。它提供了一个强大的调度引擎、管理报警能力和内建的复杂管理接口。◆使用它能执行如下的管理任务:管理登录、授权和用户。创建脚本。管理设备服务数据库。备份数据库和事务日志。管理表、视图、存储过程、触发器、索引、规划以及用 户定义的数据类型。创建全文索引、数据库视图和数据库维护计划。导入和导出数据。传送数据。执行各种Web管理任务。物业信息管理 第四章数据库技术基础4.2SQLServer概述(2)SQLServer查询分析器的功能◆SQLServer查询分析器用于交互执行Transact-SQL语句,分析查询计划,查看统计信息和同时管不同窗口中的多个查询。物业信息管理 第四章数据库技术基础4.2SQLServer概述4.2.3SQLServer数据库1、数据库类型SQLServer数据库有两类:①系统数据库:系统数据库用于管理系统并存放SQLServer的基本信息。
②用户数据库:是用户创建的数据库。物业信息管理 第四章数据库技术基础4.2SQLServer概述在安装SQLServer时,安装程序创建四个系统数据库和两个样板数据库。■Master
通过记录用户账号、配置环境变量和系统错误出处等,控制SQLServer的用户数据库和操作。■Model
为用户数据库提供一个模板和原形。■Tempdb
为临时数据库或其他临时工作存储需要提供的存储空间。■Msdb
支持SQLServerAgent,并为调度信息和作业历史记录提供存储区。2、数据库对象当用户创建一个数据库之后,SQLServer数据库系统将自动为用户创建的数据库产生一系列数据库对象,以帮助用户定义数据的结构和数据的完整性。表4.3SQLServerr数据库对象物业信息管理 第四章数据库技术基础4.2SQLServer概述数据库对象说明
表表中包含了数据库中的所有数据,它定义了表中的列和行的集合
视图提供一种查看一个或多个表中的数据的方法存储过程预先编译好一给SQL语句的命名集合
索引是一种数据的存储方式,提供数据的快速访问并强制数据完整性
触发器是一种特殊形式的存储过程,在用户更改数据库中数据时自动执行
4.2.4SQLServer2000安装
1、硬件要求
物业信息管理 第四章数据库技术基础4.2SQLServer概述硬件最低要求计算机PentiumⅢ或兼容机,600MB或更高,建议1GHz或更高内存(RAM)企业版:至少64MB,建议128MB或更多;标准版:至少64MB;个人版:Windows2000环境至少64MB,其他所有操作系统环境至少32MB;开发版:至少64MB。硬盘空间完全安装:180MB典型安装:170MB最少安装:65MB安装管理工具:90MB安装OLAP服务器:50MB安装English查询:12MB其他设备鼠标或兼容设备、VGA或更高分辨率、CD-ROM驱动器物业信息管理 第四章数据库技术基础4.2SQLServer概述SQLServer版本或组件操作系统要求企业板WindowsNTServer4.0,Windows2000Server,Windows2000AdvancedServer标准版WindowsNTServer4.0,Windows2000Server,Windows2000AdvancedServer个人版WindowsMe,Windows98,WindowsNTServer4.0,Windows2000Professional开发版WindowsNTServer4.0,Windows2000ProfessionalWindows2000仅客户端工具WindowsMe,Windows98,WindowsNTServer4.0Windows20002、软件方面其他软件:IE4.0或更高版本3、安装过程及选项=>①运行SQLServer光盘上的Autorun.exe文件;=>②单击“安装SQLServer2000组件”;=>③单击“安装数据服务器”;=>④在“安装向导”对话框中:单击“下一步”=>⑤在“计算机名”对话框中:选“本地计算机”、单击“下一步”;=>⑥在“安装选择”对话框中:选“创建新的SQLServer实例,或安装客户端工具”、单击“下一步”;物业信息管理 第四章数据库技术基础4.2SQLServer概述=>⑦在“输入用户信息”对话框中:输入“用户名”和“公司名”、单击“下一步”;=>⑧阅“读软件许可协议”,选“同意”、单击“下一步”;=>⑨在“安装定义”对话框中:选“服务器和客户端工具”、单击“下一步”;=>⑩在“安装类型”对话框中:选“典型安装”、单击“下一步”;=>⑾在“服务帐户”对话框中:选“使用域用户帐户”,输入“用户名(可选默认)”、“密码(可缺省)”、“域(可选默认)”、单击“下一步”;=>⑿在“身份证模式”对话框中:选“混合模式”、“输入和确认密码”、单击“下一步”;=>⒀在“开始复制文件”对话框中:单击“下一步”按钮,开始安装SQLserver系统;=>⒁出现“安装完毕”对话框:单击“完成”按钮至此完成数据库系统安装工作。4.3SQLServer安全管理4.3.1登陆验证管理
4.3.2许可权限管理
4.3.3角色管理物业信息管理第四章数据库技术基础4.3SQLServer安全管理4.3.1登录验证管理SQLServer的安全管理是根据SQLServer采用的两级安全策略对用户进行登录验证管理和许可权限管理。SQLServer的任务包括:配置SQLServer验证模式,创建用户登录账号。物业信息管理第四章数据库技术基础4.3SQLServer安全管理许可权限管理管理的任务包括:授权、拒绝和撤销用户的数据库访问许可权限。实现安全管理任务可使用SQLServer企业管理器或执行系统存储过程,实现方法如下:SQLServer2000采用两种验证模式:(1)WindowsNT验证模式(2)混合验证模式:允许使用WindowsNT验证或SQLServer验证。配置和选择SQLServer验证模式创建用户登录帐号物业信息管理第四章数据库技术基础4.3SQLServer安全管理配置和选择SQLServer验证模式:①关闭和重启”SQLServer服务管理器”。②打开”SQLServer企业管理器”。③双击”SQLServer组”,在“SQLServer服器(WindowsNT)”上单击右键,然后选择“属性”。④在“属性”窗口中单击”Security(安全性)”选项卡、选“SQLServer和Windows”、“审核级别:无”、“本帐户:Adminnistrator(默认)”、“密码:(缺省)”、“确定”。物业信息管理第四章数据库技术基础4.3SQLServer安全管理创建用户登录帐号1、使用SQLServer企业管理器添加SQLServer的登录账号方法和步骤如下:①在“SQLServer企业管理器”中,展开SQLServer组→“SQLServer服务器”→“安全性”。②右键单击“安全性”下面的“Logins(登录)”。③选择弹出式菜单中的“SQLServer登录属性-新建登录”对话框中:选“常规”、输入“名称:zjdd”、选“SQLServer身份验证”、输入“密码:111111”、“数据库:master”、“语言:默认”、“确定”。 此时,用户“zjdd”就可以登录SQLServer数据库了。
物业信息管理第四章数据库技术基础4.3SQLServer安全管理2、利用T-SQL创建登录帐号的语法格式为:sp_addlogin
登录帐号的登录名,登录密码,默认数据库,默认语言,安全码,是否加密(1)修改密码:
sp_password
旧密码,新密码,指定登录帐号(2)修改默认数据库
sp_defaultdb
指定登录帐号,默认数据库(3)修改默认语言
sp_defaultlanguage
指定登录帐号,默认语言物业信息管理第四章数据库技术基础4.3SQLServer安全管理[例4-27]用T-SQL创建登录帐号“zjdd”。
sp_addlogin'zjdd1','111111',student,'English‘操作步骤:打开“企业管理器”→点击“工具”→单击“查询分析器”→在查询文档框中输入如下代码:
sp_addlogin'zjdd1','111111',student,'English‘ →按“F5”键,显示如下提示信息:
命令已成功完成。通过上述操作,即可完成了创建登录帐号的工作。说明:用“企业管理器”检查创建登录帐号是否成功,具体操作:打开“企业管理器”→展开“SQLServer组”→展开“SQLServer服务器”
→单击“安全性”→单击“登录”→查看“名称”。(此时可看到登录帐号:zjdd1,并可用“zjdd1”从“查询分析器”进行登录。)3、利用T-SQL删除登录帐号的语法格式为:
Sp_droplogin
指定登录帐号[例4-28]用T-SQL删除登录帐号“zjdd1”。
sp_droploginzjdd1操作步骤如下:打开“企业管理器”→点击“工具”→单击“查询分析器”→在查询文档框中输入如下代码:
sp_droploginzjdd1 →按“F5”键,显示如下提示信息:
命令已成功完成。通过上述操作,即可完成了删除登录帐号的工作。物业信息管理第四章数据库技术基础4.3SQLServer安全管理4.3.2许可权限管理为SQLServer用户创建登录账号以后,还需将用户的登录账号分配给其所要存取的数据库,即创建数据库用户以及为该用户分配许可权限。SQLServer企业管理器可完成对用户单独设置权限;如果为一组用户设置相同的权限,也可对用户所属的角色进行设置。物业信息管理第四章数据库技术基础4.3SQLServer安全管理物业信息管理第四章数据库技术基础4.3SQLServer安全管理1、创建数据库用户(1)使用SQLServer企业管理器可创建数据库用户,步骤如下:打开“SQLServer企业管理器”→展开“SQLServer组”→“SQLServer服务器”→“数据库”→选择用户要使用的数据库“Northwind”→右键单击“用户”→然后选择“新建数据库用户”→在“登录名”栏中选择用户名”zjdd”。(如下图)→为新用户指定数据库角色。如db_owner。缺省的数据库角色是Public。单击“确定”按钮 (如下图)。物业信息管理第四章数据库技术基础4.3SQLServer安全管理(2)使用T-SQL语句创建、删除数据库用户①使用T-SQL语句创建数据库用户的语法格式如下:
sp_grantdbaccess
登陆帐号,数据库用户名②使用T-SQL语句删除数据库用户的语法格式如下:
sp_revokedbacces
指定数据库用户名【例4-3-2-1】用T-SQL语句创建、删除数据库用户”zjdd1”。操作步骤如下:打开“企业管理器”→点击“工具”→单击“SQ查询分析器”→在查询文档框中输入如下代码:
sp_grantdbaccess
zjdd,zjdd1
sp_revokedbaccesszjdd1 →按“F5”键,显示如下提示信息:
命令已成功完成。通过上述操作,即可完成了创建数据库用户的工作。2、分配许可权许可权限指明用户可以访问哪些数据库对象以及用户使用这些对象做什么操作,每个数据库都有它自己独立的许可系统。SQLServer中有两种类型的许可权限: ★语句许可:包括创建数据库对象如数据 库、表、视图、存储过程和索引等。 ★对象许可:包括创建数据库对象的操作 和执行等,如数据的查询、更新、删除 等。物业信息管理第四章数据库技术基础4.3SQLServer安全管理(1)使用”SQLServer企业管理器”可实现语句许可,其操作步骤如下:①展开要使用的数据库”Northwind”→单击下面的“用户”(Table)。②在用户显示栏中选择用户“guest”,单击鼠标右键→选择弹出式菜单中的“AllTasks(所有任务)”→ →“ManagePermissions(管理权限)”,如图所示。物业信息管理第四章数据库技术基础4.3SQLServer安全管理
→打开属性许可“Permissions(数据库用户属性-Northwind)”的窗口,在许可窗口中,为用户”guest”设置对“物业收费”表的”Select、Insert、Update、Delete”语句的许可权限;以及其他各表的许可权限。如图所示。物业信息管理第四章数据库技术基础4.3SQLServer安全管理(2)使用T-SQL语句,也可达到对用户分配许可权限。SQLServer中共有三条Transact_SQL语句可对用户许可权限进行管理。■Grant:授权许可。■
Deny:拒绝许可。■
Revoke:撤销以前授予和拒绝的许可。物业信息管理第四章数据库技术基础4.3SQLServer安全管理①给数据库用户授权许可的语法格式如下:
gran
权限语句on表名或视图名to用户名或角色名其中:权限语句为
select,insert,update,create,delete,create
tbale等。②拒绝数据库用户授权许可的语法格式如下:
deny权限语句on表名或视图名to用户名或角色名③撤消数据库用户授权许可的语法格式如下:revoke权限语句on表名或视图名to用户名或角色名【例4-3-2-2】允许用户“zjdd”,在数据库“northwind”中创建表和存储过程:操作步骤如下:打开“企业管理器”→点击“工具”→单击“SQ查询分析器”→在查询文档框中输入如下代码:
usenorthwind grantCreateTable,CreateProcedure tozjdd
→按“F5”键,显示如下提示信息:
命令已成功完成。通过上述操作,即可完成了数据库用户授权许可的工作。说明:可用“企业管理器”查询数据库用户对数据库操作的允许权限。操作步骤如下:启动“企业管理器”→展开“SQLServer组”→“SQLServer服务器”→“数据库”→选择用户要使用的数据库“Northwind”→单击右键→弹出“Northwind属性”窗口→单击“权限”,即可看到用户“zjdd”具有创建表和存储过程的权限。【例4-3-3-1】拒绝zjdd对Products表使用Select,Insert,Update语句权。
usenorthwind denySelect,Insert,Update Onproducts tozjdd说明:用“企业管理器”查询zjdd对Products表使用权限:启动“企业管理器”→展开“SQLServer组”→“SQLServer服务器”→“数据库”→选择用户要使用的数据库“Northwind”→单击“表”→双击表“Products”→弹出“表属性-Products”窗口→单击“权限”,即可看到用户zjdd对Products表的操作权限。【例4-3-3-2】撤销zjdd对Products表使用Select,Insert,Update语句权。
usenorthwind revokeselect,insert,update onproducts fromzjdd[例4-29]用T-SQL语句,授予用户SqlUser在Market数据库中创建视图权限,并拒绝其修改、删除、插入orders表的权限(课本p.98)。
usemarket grantcreateviewtosqluser denyupdate,delete,insertonorderstosqlUser说明:查询用户权限:启动“企业管理器”→展开“SQLServer组”→“SQLServer服务器”→“数据库”→选择用户要使用的数据库“market”→单击右键→弹出“market属性”窗口→单击“权限”,即可看到用户“zjdd”具有创建视图和拒绝其修改、删除、插入orders表的权限。物业信息管理第四章数据库技术基础4.3SQLServer安全管理4.3.3角色管理角色:是一个对用户权限进行管理的基本单位。当若干用户具有相同权限时,我们可以把他们组成一个组进行统一管理,而不必给每个用户分配权限,这时就要使用角色这个概念。物业信息管理第四章数据库技术基础4.3SQLServer安全管理首先要创建一个角色,并对角色分配相应的权限,然后将这些用户加入到这个角色而成为该角色的成员,当角色的权限改变时,所有该角色的成员的权限也会相应的变化。物业信息管理第四章数据库技术基础4.3SQLServer安全管理SQLServer2000支持三种不同的角色:
(1)固定的服务器角色
(2)固定的数据库角色
(3)用户定义的数据库角色物业信息管理第四章数据库技术基础4.3SQLServer安全管理1、固定的服务器角色普通的数据库用户不能创建和删除这些角色,它们提供了服务器级所有系统管理功能。例如:创建数据库,管理文件结构和安全管理。如下表给出了固定的服务器角色。物业信息管理第四章数据库技术基础4.3SQLServer安全管理角色
许可权限
Sysadmin
执行所有的与服务器相关性的活动Securityadmin
创建和管理服务器的登录Serveradmin
管理服务器级的属性和配置
Setupadmin
安装和管理复制Processadmin
管理SQLServer进程Create创建和管理数据库Diskadmin
管理磁盘空间和文件配置将用户”zjdd”添加到Sysadmin服务器角色中,其方法如下:①启动“企业管理器”→展开“SQLServer组”→展开“服务器(WindowsNT)”→“安全性”→单击“登录”;②在右面细节窗格中,双击”zjdd”;③在弹出“SQLServer登录属性”窗口,选择“服务器角色”标签→选中“SystemAdministrators”复选框→单击“确定”按钮。如后面图所示。物业信息管理第四章数据库技术基础4.3SQLServer安全管理物业信息管理第四章数据库技术基础4.3SQLServer安全管理2、固定的数据库角色
固定的数据库角色提供了数据库级的管理功能,以及对数据库的授予或者拒绝读写活动的许可权限,它决定了一个用户具有哪些执行数据库操作的许可。如下表中列出了SQLServer所支持的数据库角色。物业信息管理第四章数据库技术基础4.3SQLServer安全管理角色
许可权限
Public提供数据库用户维护数据缺省许可,所有的用户都是该角色的成员
Db_owner执行所有的数据库活动
Db_accessadmin
创建和管理数据库用户和角色Db_ddladmin
添加、删除和修改所有数据库对象Dbsecurityadmin
为用户角色分配许可Db_backupoperator
执行备份恢复数据库Db_datareader
能读数据库中所有的表和数据Db_datawriter能修改数据库中所有表的数据Db_denydatareader
不能读数据库中的任何表的数据
Db_denydatawriter
不能修改数据库中的任何表的数据将用户zjdd添加为固定的数据库角色的成员之一,其操作方法如下:
①启动“企业管理器”→展开“SQLServer组”→展开“服务器(WindowsNT)”→“安全性”→单击“登录”。②右键单击任一用户名,如zjdd,选择弹出菜单中的“属性”命令。③在“SQLServer登录属性”对话框中,选择“数据库访问”标签。④为用户选择相应的数据库及数据库角色。如下图所示。物业信息管理第四章数据库技术基础4.3SQLServer安全管理物业信息管理第四章数据库技术基础4.3SQLServer安全管理3、用户定义的数据库角色用户定义的角色是由用户创建的,并可对该角色分配许可,如果需要,也可删除它们。创建一个“wuyegl”角色方法如下:①启动“企业管理器”→展开“SQLServer组”→展开“服务器(WindowsNT)”
。②打开目标数据库“zjdd”,右键单击“角色”,在弹出菜单中选择“新建数据库角色”。物业信息管理第四章数据库技术基础4.3SQLServer安全管理③在“数据库角色属性”对话框的“名称”栏中,输入角色名“wuyegl”。④在“数据库角色类型”中选择“标准角色”。⑤点击“用户”栏下的“添加”按钮,出现“添加角色成员”,在“选择要添加的角色”列表中,选择要加入该角色的成员,如用户“zjdd”并单击“确定”按钮。
★此时在“角色”的细节窗口中就可看到刚刚建立的“wuyegl”角色。
★如图下图所示。物业信息管理第四章数据库技术基础4.3SQLServer安全管理4.4Transact-SQL语言基础4.4.1Transact-SQL语言运行环境4.4.2Transact-SQL语言4.4.3Transact-SQL语言的其他元素物业信息管理第四章数据库技术基础4.4Transact-SQL语言基础
4.4.1Transact-SQL语言运行环境SQLServer2000使用T-SQL作为它的数据库查询和编程语言。用户能使用T-SQL访问数据,查询、更新和管理SQLServer数据库系统。物业信息管理第四章数据库技术基础4.4Transact-SQL语言基础
Transact-SQL语言可运行于两种环境中:一种是图形方式下的运行环境,即SQLServer查询分析器。另一种是交互式命令方式下的实用程序OSQL。我们这里仅介绍第一种方式即SQLServer查询分析器。物业信息管理第四章数据库技术基础4.4Transact-SQL语言基础
SQLServer查询分析器简介
SQLServer查询分析器是一个图形方式工具。用户可以使用T-SQL语言访问数据,查询、更新和管理SQLServer数据库系统的开发。SQLServer查询分析器的启动和界面及命令简介物业信息管理第四章数据库技术基础4.4Transact-SQL语言基础
(1)界面SQLServer查询分析器的界面与WINDOWS的其他应用界面是相同的,当用户建立一个新的连接时,SQLServer自动建立一个查询窗口,如果需要可建立多个查询窗口。在查询窗口的顶部,显示所建立连接的数据库名及用户名等内容。物业信息管理第四章数据库技术基础4.4Transact-SQL语言基础
工具栏命令从左到右按顺序依次为:①新建:建立一个新的查询窗口。②装载SQL脚本:装载一个查询脚本。③保存查询/结果:存储查询脚本或执行查询的结果。④清除窗口:清除一个查询窗口。物业信息管理第四章数据库技术基础4.4Transact-SQL语言基础
⑤执行模式:选择一种显示结果的方式。执行的结果可以文本方式显示,也可以网格的方式显示。⑥分析查询:检查语法。⑦执行查询:执行查询脚本。可执行全部的查询脚本,也可选择其中的一部分脚本执行。⑧取消执行查询:取消一个查询。说明:执行查询命令也可以点击菜单。4.4.2Transact-SQL语言
T-SQL语言共有三种类型。即数据库控制语句
(对用户设置权限)数据库定义语句
(建立、更改、删除数据库)数据库操作语句
(对数据库中的表进行操作) ■Select检索语句
(查询数据库表中的记录) ■Insert插入语句
(在数据库表中插入一条记录)■Update更改语句
(更改数据库表中字段的值)■Delete删除语句
(删除数据库表中的记录)物业信息管理第四章数据库技术基础4.4Transact-SQL语言基础
数据库控制语句(DCL)DCL语句能够设置或更改用户对数据库的访问许可权限。Grant授予权限语句:例如:授予用户创建数据库、创建表的许可。Deny拒绝权限语句:拒绝用户访问数据库及执行某些操作。Revoke撤销权限语句:撤销以前对用户权限的授予和拒绝。DCL数据库控制语句的基本语法:
物业信息管理第四章数据库技术基础4.4Transact-SQL语言基础
对象许可格式1:
Grant{All∣语句[,…n]}to用户账号[,…n]
Deny{All∣语句[,…n]}to用户账号[,…n] Revoke{All∣语句[,…n]}From用户账号[,…n]说明:①参数All指所有的语句,包括createdatabase,createtable,createview,createprocedure,createindex。
②用户账号可以是SQLServer用户账号或WindowsNT用户账号。能授权用户访问数据库或对数据库执行某些操作。物业信息管理第四章数据库技术基础4.4Transact-SQL语言基础
对象许可格式2:
Grant{All∣许可[,…n]}{on{表|视图}|to用户账号[,…n]
Deny{All∣许可[,…n]}{on{表|视图}|to用户账号[,…n] Revoke{All∣许可[,…n]}on{表|视图}From用户账号[,…n]说明:All提供所有的许可,包括Select,insert,update,delete,exe。DCL数据库控制语句的基本语法应用举例[例4-1]授予用户zjdd创建数据库和创建表的许可方法如下:(在查询分析窗口输入下列语句,然后按F5功能键执行。)UsemasterGrantcreatedatabase,createtabletozjdd说明:可用“企业管理器”查询用户的权限:展开“服务器”→“数据库”→选择“master”→按右键→在出现菜单单击“属性”→在弹出“master属性”窗口→单击“权限”。即可看到用户“zjdd”拥有的权限。物业信息管理第四章数据库技术基础4.4Transact-SQL语言基础
[例4-2]拒绝用户zj_fky对northwind数据库中表products使用insert,update语句来更改数据库。UsenorthwindDenyinsert,updateOnproductstozj_fky用“企业分析器”查看用户对数据库使用权限:展开“服务器”→“数据库”→选“northwind”→单击“用户”→选用户“zj_fky”按右键→在出现“菜单”中选“所有任务”→单击“权限”。即可看到用户zj_fky对数据库的使用权限。[例4-3]撤消用户zj_fky对northwind数据库中表products使用insert,update语句的限制。UsenorthwindRevokeinsert,updateOnproductsfromzj_fky数据库定义语句(DDL)DDL语言可以定义数据库对象和管理数据库对象。定义数据库对象和管理数据库对象可以通过创建数据库对象以及更改、删除安排对象和创建用户定义的数据类型来实现。物业信息管理第四章数据库技术基础4.4Transact-SQL语言基础
这些语言包括:
create对象名(创建一个对象)
Alter对象名(更改一个对象)
Drop对象名(删除一个对象)说明:①对象名可以是database,table,view,procedure,index。②执行DDL语句只有sysadmin,db_creator,db_ower和db_ddladmin角色可以执行DDL语句。[例4-4]创建一个数据库,其数据库名为zjnh,文件名及其路径为C:\SQL\zjnh.mdf,文件大小为10MB,文件增长率为10%。其执行的语句如下:CreatedatabasezjnhOnPRIMARY(name=zjnh_data,Filename='c:\sql\zjnh_data.mdf',Size=4MB,
maxsize=10,
Filegrowth=10%)logon(Name=zjnh_log,Filename='c:\sql\zjnh_log.mdf',Size=2MB,
Maxsize=5,
Filegrowth=1)物业信息管理第四章数据库技术基础4.4Transact-SQL语言基础
说明:语句中的参数选项含义如下:PRIMARY:指定数据库的主文件,该文件存储了数据库系统信息及数据。Filename:指定存放在磁盘上的文件名和它的存取路径。存取路径必须是指定安装在SQLSERVER的服务器上的一个文件夹。Size:指定文件大小,最小值为1MB,若不指定文件的大小,数据文件的默认值是3MB,日志文件的默认值是1MB。物业信息管理第四章数据库技术基础4.4Transact-SQL语言基础
Maxsize:指定文件可扩展到的最大尺寸,如果不指定,则文件可增长到磁盘空间满。Filegrowth:指定文件的增长量。可按字节增长或按百分比增长。默认值是10%或最小值是64KB[例4-5]删除数据库zjnh语句:
dropdatabasezjnh[例4-30]用T-SQL语句,创建数据库表。
Use物业收费
Createtable管理费
(
业主姓名char(10),
户型char(10),
建筑面积int,
管理费float(2),
房号char(10),
户型char(8),
水电费float(2) )物业信息管理第四章数据库技术基础4.4Transact-SQL语言基础
【例4-30-1】修改数据库表的字段use物业收费
/*打开数据库*/altertable收费表
/*修改表*/altercolumn水电费decimal(15,2)
/*将字段水电费长度改为15位,其中2位小数*/数据库操作语句(DML)DML语句能够处理数据库中的数据,使用DML语句不仅能对数据库进行插入、更新和删除等操作,还能进行查询等操作,获取必要的信息。DML语句包括:select,insert,update,delete。物业信息管理第四章数据库技术基础4.4Transact-SQL语言基础
Select语句主要用于检索数据。基本语法为:
Select〈结果数据列表〉 From{〈表〉 Where〈查询条件〉}说明:①Select语句中的“结果数据列表”指定了语句要返回的列。②
From子句指定所要搜索的表。③
Where子句指定返回的行。其搜索条件可以使用比较运算符,字符串和逻辑运算符来限制行的数目。物业信息管理第四章数据库技术基础4.4Transact-SQL语言基础
[例4-6]检索“收费表”中的水电费100~250元之间的所有记录,并将其房号、业主姓名、户型、建筑面积等显示出来。use物业收费/*打开数据库*/select房号,业主姓名,户型,建筑面积,管理费,水电费from收费表where水电费>=100and水电费<=250说明:查询前,首先要打开“收费表”所属的数据库“物业收费”,“收费表”是数据库“物业收费”其中的一张表。物业信息管理第四章数据库技术基础4.4Transact-SQL语言基础
Insert语句主要用于向数据库插入一行。基本语法为:
Insert[into]{表|视图}[(字段列表)] {values|(值列表)}说明:①一般来说,Insert语句一次只能插入一条记录。②字段列表,必须用括号括起来并用逗号分开。若未指定字段列表,则隐含提供所有字段。③values子句指定要插入的数据,插入新数据列的顺序和数据类型必须对应表的列顺序和数据类型。④必须有Insert许可权限的角色或用户,才能执行该语句。物业信息管理第四章数据库技术基础4.4Transact-SQL语言基础
[例4-7-1]在student1表中,插入一条“3020915,陈大强,男,21”的记录。usestudent/*打开数据库*/insertstudent1(学号,姓名,性别,年龄)/*字段表*/values(‘3020915’,‘陈大强’,‘男’,‘21’)/*要插入数值*/select*fromstudent1/*输出表所有记录*/说明:①insert与values括号中的元素和数据值必须一一对应。
②select*fromstudent1是查询表 “student1”的所有记录。物业信息管理第四章数据库技术基础4.4Transact-SQL语言基础
要插入记录的表名Update语句用于更改表中数据。基本语句为:
Update{表名|视图名} Set{column={表达式}[,…n]} Where{搜索条件}
说明:①Where子句指定要更新的行。②
Set子句指定要更新的数据。③输入的数据类型必须与列定义的数据类型相同。④一次只能更改一个表中的数据。物业信息管理第四章数据库技术基础4.4Transact-SQL语言基础
[例4-8]在表“student1”中将每个学生的年龄加上1岁。操作如下:
usestudent/*打开数据库student*/ updatestudent1/*更改表student1*/ set年龄=年龄+1/*修改年龄字段,将所有记录中的年龄加1*/ select*fromstudent1/*输出表中所有记录*/
物业信息管理第四章数据库技术基础4.4Transact-SQL语言基础
Delete语句用于删除表中的一行或多行记录。基本语法为:Delete[from]table_nameWhere搜索条件说明:①如果Delete语句不指定Where子句,SQLServer将删除表中的所有行。②删除的每一行记录在事务日志中。物业信息管理第四章数据库技术基础4.4Transact-SQL语言基础
[例4-9]删除student1表中所有年龄22岁的记录。
usestudent/*打开数据库*/ deletefromstudent1/*删除表student1中的记录*/ where年龄=22/*删除表中年龄等于22岁的全部记录*/select*fromstudent1/*输出表中所有记录*/物业信息管理第四章数据库技术基础4.4Transact-SQL语言基础
4.4.3Transact-SQL语言的其他元素
1、局部变量
2、全局变量
3、运算符
4、函数
5、流程控制语句Begin…end程序块If…else语句While语句Break语句Continue语句
6、注释物业信息管理第四章数据库技术基础4.4Transact-SQL语言基础
1、局部变量局部变量是由用户定义的,它只能在本程序内部中声明和使用。声明局部变量可以使用Declare语句。在set语句中赋给局部变量一个初始值。局部变量名字前有一个@符号。基本语法为:
Declare{@变量名数据类型}[,…n] Set@局部变量名=表达式物业信息管理第四章数据库技术基础4.4Transact-SQL语言基础数据类型数据类型所占字节数数的范围备注整数bigint8-261~(261-1)int4-231~(231-1)smallint2-215~(215-1)tinyint10~255浮点数real4(-3.40e-38)~(3.40e+38)精确到7位小数float8(-1.79e-308)~(1.79e+308)float(n)精确n位小数decimal2~17-1038~1037numeric同上同上例如:decimal(15,3),表示共有15位,其中整数位为12位,小数位3位数据类型所占字节数数的范围备注字符型char11~8000个字节Char(n)n表示占n个字符空间nchar21~4000个字节nchar(n)varchar11~8000个字节Varchar(n)nvarchar21~4000个字节nvarchar(n)日期时间货币datetime8个字节前4个字节存储日期,后4个存时间money-263~(263-1)4位小数[例4-10]局部变量的说明、赋值和输出语句。Declare@str1char(10),@x1int,@x2realSet@str1=‘good’/*把字符串’good’赋值给变量str1*/set@x1=13/*将13赋值给变量x1*/Set@x2=16/*将16赋值给变量x2*/Print@str1/*打印变量str1*/Print@x1/*打印变量x1*/Print@x2 /*打印变量x2*/
运行结果为:
good 13 16物业信息管理第四章数据库技术基础4.4Transact-SQL语言基础
说明:①变量str1是局部变量,数据类型为字符型,长度为10个字符;②变量x1是局部变量,数据类型为整型;③变量x2是局部变量,数据类型为浮点型。2、全局变量全局变量是由SQLServer数据库系统提供,并需要用户预先定义和维护。全局变量能够提供SQLServer当前环境信息,它记录了SQLServer自上次启动以来所发生的系统活动和系统连接信息,全局变量名字前有两个(@@)。物业信息管理第四章数据库技术基础4.4Transact-SQL语言基础
[例4-11]全局部变量的说明、赋值和输出语句。
Declare@@str1char(10),@x1int,@x2real Select@@str1=‘good’,@x1=12,@x2=16 Select@@str1,@x1,@x2
说明:①str1为字符型全局变量;②x1为整型局部变量;③x2为浮点型局部变量。分别对变量str1,x1和x2赋值在一行位置上输出变量str1,x1和x2的值运行结果为:good12 16.03、运算符运算符用于执行数学计算,字符串连接和各常量和变量之间的比较。SQLServer支持四种运算符:算术运算符:(*)乘,(/)除,(%)取模,(+)加和(-)减。比较运算符:(<)小于,(>)大于,和(=)等于。字符串并置:(+)。逻辑运算符:and(逻辑与),or(逻辑或), not(逻辑非)。物业信息管理第四章数据库技术基础4.4Transact-SQL语言基础
[例4-12]算术运算符的应用。Declare@str1char(10),@x1int,@x2realSet@str1='good'set@x1=13+2-6Set@x2=16*2/4Print@str1Print@x1Print@x2运行结果为:
good 9 8物业信息管理第四章数据库技术基础4.4Transact-SQL语言基础
4、函数在T-SQL中提供了许多类型的函数。这些函数包括:聚集函数数据类型函数日期时间函数数学函数字符串函数系统函数等。其中较常用的是聚集函数。物业信息管理第四章数据库技术基础4.4Transact-SQL语言基础
聚集函数包括:Avg()
计算平均值Count(*)
统计选择的记录个数Min()
确定最小值Max()
确定最大值Count()
统计特定列中值的个数Sum()
计算综合聚集函数的语法是类似的。
Select函数名(参数)[例4-13]求表student1中学生的平均年龄。
usestudent selectavg(年龄) fromstudent1运行结果为:23物业信息管理第四章数据库技术基础4.4Transact-SQL语言基础
[例4-14]求表student1中学生的最大、最小、平均、总年龄和记录总个数。
usestudent selectmax(年龄),min(年龄),avg(年龄),sum(年龄),count(*) fromstudent1
select*fromstudent1/*显示表中全部记录*/运行结果为:26 21 23 161 73061008 张三 男 262050723 张国华 男 242050726 张青 女 213020916 陈小英 女 233020913 吴天 男 233020918 李四 男 232050728 陈莲 女 214、流程控制语句①Begin…end
程序块begin…end用来设定一个程序块,相当于C语言程序中的{},即将begin…end内的所有程序视为一个单元执行。语法格式如下:
begin
命令行
end
说明:
begin…end常用于选择语句和循环语句。物业信息管理第四章数据库技术基础4.4Transact-SQL语言基础
②if
语句if
语句是最常用的条件语句,其语法格式如下:if条件表达式
命令行1或程序块1else
命令行2或程序块2说明:①其中“条件表达式”可以是各种表达式组合,但表达式的值必须是逻辑值,即“真”或“假”。②若果“条件表达式”的条件成立,即为“真”就执行“命令行1或程序块1”,否则就执行“命令行2或程序 块2”。物业信息管理第四章数据库技术基础4.4Transact-SQL语言基础
条件表达式命令1或程序1命令1或
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年员工安全知识测试题库及答案
- 花圃拆除施工方案模板(3篇)
- 2025年检验师面试题库及解析版
- 2025年土地整治项目管理员中级考试备考资料及高频题库
- 2025年电网计算机笔试高频题解析
- 2025年经典旅游案例教学及竞赛模拟题库
- 2025年建筑水电安装工程师执业资格考试试题及答案解析
- 2025年机关幼儿园招聘面试预测题
- 2025年会展策划专家资格考试试题及答案解析
- 2025年化工工程师职业能力评估试题及答案解析
- 设备搬迁调试协议合同书
- 中证信息技术笔试题库
- 监护学徒协议书范本
- 办公楼维修改造施工方案
- 集团海外业务管理手册(专业完整格式模板)
- 高危儿培训计划和方案
- 2025年公文写作基础知识竞赛试题库及答案(共120题)
- ISO9001 质量管理体系全套(质量手册+程序文件+表格记录全套)
- 路灯CJJ检验批范表
- 肛肠科年度汇报总结
- 鸡蛋合作合同范本
评论
0/150
提交评论