数据库原理与应用SQLServer课程考核考勤及上课表现10%课堂知识点的测验、上机实训操作、作业、项目完成情况30%期末考试60%目录•第一部分SQLServer2005的安装与管理器•第二部分数据库管理•第三部分数据表管理•第四部分数据管理•第五部分视图与索引•第六部分T-SQL编程•第七部分事务•第八部分游标•第九部分存储过程•第十部分触发器•第十一部分权限以及安全•第十二部分数据库设计3第一部分SQLServer2005的安装与管理器1.数据库的应用2.数据库相关概念3.关系数据库4.SQLServer20055.SQLServer2005的启动总结数据库的应用•超市收银员扫描条码,就能调出商品价格,便于快速结账。•火车售票员录入出发地和目的就能调出车次、价格及车票剩余数量,利于快速售票。•到营业厅输入手机号和时间段就能打印出通话记录单。•录入你的游戏账号和密码就能调出玩家的信息。•网站发布的新闻、可转载的网络小说、网络视频、博客文章。都在使用数据库数据库和应用程序2-1数据库服务器响应和提供数据应用程序操作和查询数据库数据库和应用程序2-2应用程序作用:响应操作并显示结果、向数据库请求数据要求:美观、操作简单方便数据库作用:存储数据、检索数据、生成新的数据要求:统一、安全、性能等数据库优点存储大量数据,方便检索和访问保持数据信息的一致、完整共享和安全通过组合分析,产生新的有用信息数据库的相关概念3-1•数据Data–描述事物的符号–可以有多种形式:数字、文字、图形、图像、声音等•数据库–存放数据的地方–需要长期存放在计算机内的、有组织的、可共享的数据集合–物理形式是存储在磁盘上的一个或多个数据文件•数据库管理系统–是操纵和管理数据库的大型软件–可建立、使用和维护数据库–它对数据库进行统一管理和控制,保证数据库的安全性和完整性数据库的相关概念3-2•数据库管理员–管理和维护数据库的人•数据库系统–一般指数据库、数据库管理系统以及运行硬件、应用程序、数据库管理员和用户的集合•数据模型–指数据库管理系统中数据的存储结构相互有关联关系的数据的集合DB工作站工作站工作站工作站DataBaseSystem管理数据库的系统软件DBMSDBA完成某一功能的应用程序DBAP1DBAP2…DBAPn应用程序n数据库的相关概念3-3数据库的发展史•初级阶段——第一代数据库–出现了层次模型、网状模型的数据库•中级阶段——第二代数据库–关系型数据库和结构化查询语言•高级阶段——新一代数据库–“面向对象”型数据库12关系数据库(RelationalDataBase,RDB)就是基于关系模型的数据库,在计算机中,关系数据库是数据和数据库对象的集合。定义疑问大多数公司都使用工资管理系统,对员工的信息、工资数据做统一管理。那么你所想到的张三、李四、王五…这些员工的信息在关系数据库如何有效存储的呢?使用数据表存储数据!关系数据库实体1实体2实体3实体4实体5某公司的员工信息行(记录)列(字段)数据表是由行(Row)和列(Column)组成的二维表。每行描述一个实体;数据表中的列通常叫做字段,它代表数据表中存储实体的共有属性。那么实体和属性具体指的是什么呢?关系数据库—数据表关系数据库—实体只要客观存在的,并且可以被描述的事物称为实体。实体实体实体实体实体实体关系数据库—属性实体1实体2实体3实体4实体5属性是对实体具体特征的描述。描述高明这名员工,可以从员工编号、姓名、性别、工资等方面来描述,而“员工编号、姓名、性别、工资”就称为属性。例如属性(字段)对不同员工的描述,其实都可以从员工编号、姓名、性别、工资这几方面进行描述,但是具体到不同的员工其员工编号、姓名、性别、工资的数据是不同的,不同的数据体现了不同的实体。不同的员工属于不同的实体SQLServer2005概述2-1•MSSQLServer2005是Microsoft开发的基于关系数据库的管理系统•采用“请求-应答”工作方式17SQLServer2005•针对不同用户群体提供多个版本。•易用性好,受广大用户青睐。版本•企业版(EnterpriseEdition)•标准版(StandardEdition)•开发板(DeveloperEdition)•工作组版(WorkgroupEdition)•精简版(ExpressEdition)SQLServer2005概述2-2SQLServer2005安装要求最少:1.0GHz奔腾Ⅲ以上处理器。推荐:2.0GHz或速度更快的处理器。最小:512MB。推荐:2.048GB或更大的内存。完全安装1.7GB。处理器内存磁盘容量MB配置要求硬件要求软件要求WindowsXPProfessionalSP2,WindowsVista的各个版Windows2003各个版本,Windows7的各个版本。SQLServer2005的安装演示整个安装过程……SQLServer2005管理工具MicrosoftSQLServerManagementStudio开发人员和DBA最常用的管理工具,使用它可以执行许多SQLServer的核心管理任务。例如:创建数据库、创建表、视图、存储过程、执行SQL语句等。SQLServerProfilerSQLServer2005外围应用配置器能帮助系统管理员监视数据库和服务器的行为,比如死锁的数量,致命的错误,跟踪DELETE、INSERT、UPDATE等Transact-SQL语句和存储过程。便于后期一步一步分析。提供对SQLServer2005本地实例和远程实例的外围应用的更多控制,提高了可管理性和安全性。SQLServer配置管理器通过SQLServer配置管理器是对MicrosoftSQLServer提供的各种服务进行登录身份配置、网络协议配置及服务的停止启动配置;另外还提供一些高级选项。其中登录身份和各种服务停止和启动配置是较为常用.停止和启动SQLServer•在对SQLServer数据库进行任何操作之前,必须启动本地或远程SQLServer服务器–使用操作系统服务管理器–使用SQLServerConfigurationManager(配置管理)–使用SQLServerMangementStudio(管理平台)•启动SQLServerMangementStudio–Windows身份验证–SQLServer身份验证22演示整个启动/停止过程……连接到SQLServer2005演示连接到服务器……选择服务器,默认本机录入登录名和密码单击连接连接成功后,显示SQLServer企业管理器第一部分总结•掌握技能–SQLServer2005的安装–SQLServer服务的启动/停止–SQLServer管理平台的进入•了解的概念–两种身份验证–数据库相关概念以及相应的英文拼写–4种数据模型24缺点:由于数据纵向发展,横向关系难以建立,数据可能会重复出现,造成维护的不便。XX科技公司公司软件部销售部高明项目1项目2李广高明赵华王明层次模型缺点:关系错综复杂,当数据逐渐增多时,将很难对结构中的关联性进行维护,扩展性受到限制。XX科技公司高明公司软件部李广公司销售部赵华项目1项目2网状模型优点:结构简单、格式唯一,理论基础严格,而且数据表之间是相对独立的,目前应用最为广泛。时下流行的Oracle、SQLServer、DB2都采用关系模型存储数据。关系模型2-1关系模型2-2•记录和记录之间通过属性之间的关系来进行连接•保证数据独立性,并形成数据集之间的关系28将面向对象的思想和数据库技术结合起来,可以使数据系统的分析、设计与人们对客观世界的认识一致。伸缩性和扩展性,处理复杂的数据模型和关系模型。利用继承的方法实现数据的重用,避免数据冗余。提高了对大对象(文本、图像、视频)信息的描述、操纵和检索能力。缺乏像关系型数据模型那样坚实成熟的理论基础。糟糕的运行效率。优点:缺点:面向对象模型第二部分数据库管理1.数据库分类2.数据库文件3.数据库的创建、修改(管理平台)4.数据库的分离和附加5.数据库的脱机和联机6.数据库的删除7.数据库的创建、删除(SQL语句)总结数据库的分类•系统数据库mastermsdbmodeltempdb系统数据库pubsNorthwindSystop……用户数据库用户数据库数据库创建数据库---数据库文件的构成数据库必备文件主数据文件.mdf日志文件.ldf次数据文件.ndf可选文件一个数据库只能有一个主数据文件一个数据库可有多个日志文件一个数据库可有多个次数据文件33采用多个数据库文件来存储数据的优点•数据库文件可以不断扩充而不受操作系统文件大小的限制•可以将数据库文件存储在不同的硬盘中,这样可以同时对几个硬盘做数据存取提高了数据处理的效率,对于服务器型的计算机尤为有用创建数据库---Systop数据库主数据文件日志文件次数据文件可分别存储在不同的磁盘中演示创建数据库……管理和维护:分离数据库演示分离数据库……管理和维护:附加数据库演示附加数据库……管理和维护:脱机和联机演示设置数据库的脱机和联机状态……管理和维护:删除数据库演示删除数据库……回顾•数据库发展经历的4种数据模式,分别是什么?•一个SQLServer数据库一般可包含哪几种文件?扩展名分别是什么?•数据库服务的启动和关闭•数据库的链接的身份验证模式分别是什么?•数据库的创建、删除•数据库的分离、附加、脱机、联机为什么使用T-SQL操作数据库•管理数据库有两种方法:–使用SqlServerManagementstudio管理数据库–使用Transact-Sql语言管理数据库•将数据库移植到客户的计算机,如果考虑SQLSERVER各种版本的兼容性,最好的办法就是编写比较通用的SQL语句创建数据库。•结构化查询语言SQL——StructuredQueryLanguageSQL是RDBMS的标准语言,遵循ANSI(美国国家标准协会)所制定的标准。•SQL分类-数据查询语言(DQL):Select*FROMABC-数据操作语言(DML):UpdateABCSETA=“CH”-数据控制语言(DCL):RevokeCreateTableFROMU1-数据定义语言(DDL):CreatedatabaseABC-通用命令语言(CCL):DeclareCSCursorFor…SQL的分类创建数据库的语法2-1CREATEDATABASEdatabasesNameON[primary](name='databases_data',--表示数据库文件的逻辑名filename=‘路径\databases_data.mdf’,--表示数据库文件的物理文件名size=XXmb,--表示数据库文件的初始大小maxsize=XXmb,--表示数据库文件的最大大小filegrowth=xx--表示数据库文件的增长速度)数据库的数据文件主要参数可以省略语法创建数据库的语法2-2[logon](name='databases_log',--表示日志文件的逻辑名filename=‘路径\databases_log.ldf’,--表示日志文件的物理文件名size=XXmb,--表示日志文件的初始大小maxsize=XXmb,--表示日志文件的最大大小filegrowth=xx--表示日志文件的增长速度)数据库的日志文件主要参数创建数据库示例1createdatabaseSystoponprimary(/*以下是主数据文件的属性*/name=‘Systop',--主数据文件的逻辑名称filename=‘E:\Systop\DB\Systop.mdf',--主数据文件的物理路径size=3mb,--主数据文件的初始大小maxsize=unlimited,--主数据文件的最大值filegrowth=10%--主数据文件的增长率)logon(/*以下是日志文件的属性*/name=‘Systop_log',--日志文件的逻辑名称filenam