中国高校课件下载中心 》 教学资源 》 大学文库

《高级数据库》课程教学课件(讲稿)Chapter 2 SQL Server基本操作

文档信息
资源类别:文库
文档格式:PDF
文档页数:28
文件大小:915.01KB
团购合买:点击进入团购
内容简介
《高级数据库》课程教学课件(讲稿)Chapter 2 SQL Server基本操作
刷新页面文档预览

Chapter2SQLServer基本操作2.1SQLServer安装与配置SQLServer是由Microsoft公司开发和推广的关系型数据库管理系统(RDBMS)。近年来陆续推出了SQLServer2005/2008/2012等,历次版本其基本功能没有太多变化。SQLServer最大的特点是图形化管理,只能运行在Windows操作系统之上。机房均已安装SQLServer2008版本,老师也提供安装文件SQLServer2008R232位,可在ftp上自行下载,安装过程查看文档"SQLServer2008安装教程.pdf。SQLServer的安装过程与其他微软产品类似,根据向导提示,选择需要的选项一步一步来完成即可。SQLServer2008提供多种版本(企业版、标准版、工作组版、网络版、开发版、数据中心版、精简版等)供不同客户根据自己的应用方案需要选择相应版本。安装完成后可以通过T-SQL语句SELECT@@version来查询自己电脑上安装的SQLServer版本。SQLServer2008R2是2008的增强版,共有7个不同的版本:■企业版EnterpriseEdition■标准版StandardEdition■工作组版WorkgroupEdition■网络版WebEdition■开发版DeveloperEdition■精简版ExpressEdition■数据中心版DatacenterEdition安装完成后找到SQLServerManagementStudio(SSMS,SQLServer管理平台)是一个集成、统一的管理工具组。在SQLServer2005版本之后开始使用这个工具组来开发、配置SQLServer数据库。2.1.1SQLServer配置(1)启动SQLServer服务■法1:计算机右键管理-服务-SQLSerVer(MSSQLSERVER)■法2:SQLServer配置管理器(SQLServerConfigurationManager)-SQLServer服务-绿色表示正在运行的服务,红色表示已停止-SQLSerVer(MSSQLSERVER)(2)服务器连接■服务器类型一默认数据库引擎第一次启动SSMS时在本地计算机上自动完成数据库服务器的注册,即注册SQLServer本地实例。如果安装时使用默认实例,数据库系统已准备好。否则需要新建注册服务器。可以注册以下类型的服务器:a)DatabaseEngine数据库引擎,是SQLServer用于存储、处理和保护数据的核心服

Chapter 2 SQL Server 基本操作 2.1 SQL Server 安装与配置 SQL Server 是由 Microsoft 公司开发和推广的关系型数据库管理系统(RDBMS)。近年 来陆续推出了 SQL Server 2005/2008/2012 等,历次版本其基本功能没有太多变化。 SQL Server 最大的特点是图形化管理,只能运行在 Windows 操作系统之上。 机房均已安装 SQL Server 2008 版本,老师也提供安装文件 SQL Server 2008 R2 32 位, 可在 ftp 上自行下载,安装过程查看文档“SQL Server 2008 安装教程.pdf”。SQL Server 的安 装过程与其他微软产品类似,根据向导提示,选择需要的选项一步一步来完成即可。SQL Server 2008 提供多种版本(企业版、标准版、工作组版、网络版、开发版、数据中心版、精 简版等)供不同客户根据自己的应用方案需要选择相应版本。安装完成后可以通过 T-SQL 语句 SELECT @@version 来查询自己电脑上安装的 SQL Server 版本。 SQL Server 2008 R2 是 2008 的增强版,共有 7 个不同的版本: ◼ 企业版 Enterprise Edition ◼ 标准版 Standard Edition ◼ 工作组版 Workgroup Edition ◼ 网络版 Web Edition ◼ 开发版 Developer Edition ◼ 精简版 Express Edition ◼ 数据中心版 Datacenter Edition 安装完成后找到 SQL Server Management Studio(SSMS,SQL Server 管理平台)是一 个集成、统一的管理工具组。在 SQL Server2005 版本之后开始使用这个工具组来开发、配 置 SQL Server 数据库。 SQL Server 配置 (1)启动 SQL Server 服务 ◼ 法 1:计算机右键管理-服务-SQL Server(MSSQLSERVER) ◼ 法 2:SQL Server 配置管理器(SQL Server Configuration Manager)- SQL Server 服务-绿色表示正在运行的服务,红色表示已停止- SQL Server(MSSQLSERVER) (2)服务器连接 ◼ 服务器类型——默认数据库引擎 第一次启动 SSMS 时在本地计算机上自动完成数据库服务器的注册,即注册 SQL Server 本地实例。如果安装时使用默认实例,数据库系统已准备好。否则需要新建注册服务器。可 以注册以下类型的服务器: a) Database Engine 数据库引擎,是 SQL Server 用于存储、处理和保护数据的核心服

务,例如,查询数据、创建数据库、创建表和视图、数据查询等操作都是由数据库引擎完成的。b)AnalysisServices分析服务,简称SSAS,商业智能应用程序提供联机分析处理(OLAP)和数据挖掘功能。c)IntegrationServices集成服务,简称SSiS,主要用于清理、聚合、合并、复制数据的转换以及管理SSIS包。d)ReportingServices报表服务,简称SSRS,是基于服务器的报表平台,可以用来创建和管理包含关系数据源和多维数据源中的数据的表格、矩阵、图形和自由格式的报表。险服务器名称一一本机名称或Localhost(本机)或.或本机IP地址(运行cmd输入ipconfig)国身份验证a)Windows验证模式:以计算机系统管理员身份登录计算机即可通过验证b)SQLServer验证模式:通过SQLServer登录名和密码进行登录。(注册时选择了混合验证模式)c)若要新建SQLServer验证模式的登录名,在对象资源管理器中,找到安全性中的登录名选项。右击鼠标在弹出的快捷菜单中选择“新建登录名”,输入一个自定义的登录名,选中"SQLServer身份验证"选项,输入密码,并将"强制密码过期"复选框中的勾去掉。至此使用新建的登录名和密码能够以SQLServer验证模式登录服务器。亦可用于远程登录。2.1.2SQLServerManagement Studio环境查询宝特型格净品品#执行教班提权美活管理器家格新建查询aeyiste39SL净4en杏波结果-cconRO#AA4三1PoCna#药品草装-444对象资调管理器”富格enaF6=SSMS有以下两个常用的工具:(1)对象资源管理器是一种图形化的管理工具,以树视图浏览所有的数据库及其对象。利用对象资源管理器可以查看所有的数据库对象。常用的数据库对象如下所示,我们将在后面的章节中一一学习

务,例如,查询数据、创建数据库、创建表和视图、数据查询等操作都是由数据库 引擎完成的。 b) Analysis Services 分析服务,简称 SSAS,商业智能应用程序提供联机分析处理(OLAP) 和数据挖掘功能。 c) Integration Services 集成服务,简称 SSIS,主要用于清理、聚合、合并、复制数据 的转换以及管理 SSIS 包。 d) Reporting Services 报表服务,简称 SSRS,是基于服务器的报表平台,可以用来创 建和管理包含关系数据源和多维数据源中的数据的表格、矩阵、图形和自由格式的 报表。 ◼ 服务器名称——本机名称或 Localhost(本机)或. 或本机 IP 地址(运行 cmd 输入 ipconfig) ◼ 身份验证 a) Windows 验证模式:以计算机系统管理员身份登录计算机即可通过验证; b) SQL Server 验证模式:通过 SQL Server 登录名和密码进行登录。(注册时选择 了混合验证模式) c) 若要新建 SQL Server 验证模式的登录名,在对象资源管理器中,找到安全性 中的登录名选项。右击鼠标在弹出的快捷菜单中选择“新建登录名”,输入一个 自定义的登录名,选中“SQL Server 身份验证”选项,输入密码,并将“强制密码 过期”复选框中的勾去掉。至此使用新建的登录名和密码能够以 SQL Server 验 证模式登录服务器。亦可用于远程登录。 SQL Server Management Studio 环境 SSMS 有以下两个常用的工具: (1)对象资源管理器 是一种图形化的管理工具,以树视图浏览所有的数据库及其对象。利用对象资源管理器 可以查看所有的数据库对象。常用的数据库对象如下所示,我们将在后面的章节中一一学习

?表Table:SOLServer中最主要的数据库对象,用来存储和操作数据的一种逻辑结构。视图View数据库中只存放视图的定义而不存放视图对应的数据,这些数据仍然存放在导出视图的基本表中福约束:具有代表性的约束就是主键和外键。主键约束当前表记录的唯一性,外键约束当前表记录与其他表的关系函数Function:用户根据需要自定义满足特定功能的函数,以方便反复调用隆存储过程Procedure:是一组为了完成特定功能的SQL语句集合,经过编译后存储在数据库中。存储过程独立于表存在。国触发器Trigger:触发器是与表直接关联的特殊的存储过程,它与表紧密相连,基于表而建立,可视作表的一部分。(2)查询分析器是T-SQL编辑器,主要用于完成SQL查询、程序设计等。新建查询-输入SQL命令-单击!执行-返回结果。SELECT @@VERSIONN--查询SQLServer版本GO--查询当前服务器的数据库SELECT * FROM sys.databasesGOSELECT *FROMPXSCJ.dbo.XSBWHERE学号-081101--查询数据表中记录GO颜色解释颜色解释蓝色参数大写关键字青绿色红色青色字符串系统表、系统视图暗绿色注释深灰色运算符洋红色系统函数褐紫红色存储过程2.1.3SQL语言由于关系模型的广泛应用,关系型数据库管理系统RDBMS成为主流。RDBMS的标准语言是SQL(StructuredQueryLanguage,结构化查询语言),但不同DBMS之间的SQL不能完全通用,Microsoft公司的SQLServer数据库系统支持的是Transact-SQL(T-SQL),而甲骨文公司的Oracle数据库系统使用的SQL是PL-SQL。■数据定义语言DataDefinitionLanguage,DDL:用于对数据库以及数据库中的各种对象进行创建、删除、修改等操作。如前所述,数据库对象主要包括表、默认约束、规则、视图、触发器、存储过程。DDL包括的主要语句及功能如下表所示

◼ 表 Table:SQL Server 中最主要的数据库对象,用来存储和操作数据的一种逻辑结构。 ◼ 视图 View:数据库中只存放视图的定义而不存放视图对应的数据,这些数据仍然存放 在导出视图的基本表中; ◼ 约束:具有代表性的约束就是主键和外键。主键约束当前表记录的唯一性,外键约束当 前表记录与其他表的关系; ◼ 函数 Function:用户根据需要自定义满足特定功能的函数,以方便反复调用; ◼ 存储过程 Procedure:是一组为了完成特定功能的 SQL 语句集合,经过编译后存储在数 据库中。存储过程独立于表存在。 ◼ 触发器 Trigger:触发器是与表直接关联的特殊的存储过程,它与表紧密相连,基于表 而建立,可视作表的一部分。 (2)查询分析器 是 T-SQL 编辑器,主要用于完成 SQL 查询、程序设计等。新建查询-输入 SQL 命令-单 击!执行-返回结果。 SELECT @@VERSION -查询 SQL Server 版本 GO SELECT * FROM sys.databases -查询当前服务器的数据库 GO SELECT * FROM PXSCJ.dbo.XSB WHERE 学号='081101' -查询数据表中记录 GO 颜 色 解 释 颜 色 解 释 蓝色 大写关键字 青绿色 参数 红色 字符串 青色 系统表、系统视图 暗绿色 注释 深灰色 运算符 洋红色 系统函数 褐紫红色 存储过程 SQL 语言 由于关系模型的广泛应用,关系型数据库管理系统 RDBMS 成为主流。RDBMS 的标准 语言是 SQL(Structured Query Language, 结构化查询语言) ,但不同 DBMS 之间的 SQL 不 能完全通用,Microsoft 公司的 SQL Server 数据库系统支持的是 Transact-SQL(T-SQL),而甲 骨文公司的 Oracle 数据库系统使用的 SQL 是 PL-SQL。 ◼ 数据定义语言 Data Definition Language,DDL:用于对数据库以及数据库中的各种对 象进行创建、删除、修改等操作。如前所述,数据库对象主要包括表、默认约束、规 则、视图、触发器、存储过程。DDL 包括的主要语句及功能如下表所示

句语功能说明不同数据库对象,其CREATE语句的CREATE创建数据库或数据库对象语法形式不同不同数据库对象,其ALTER语句的对数据库或数据库对象进ALTER行修改语法形式不同不同数据库对象,其DROP语句的语DROP删除数据库或数据库对象法形式不同数据操纵语言DataManipulationLanguage,DML:用于操纵数据库中的各种对象,检索和修改数据。DML包括的主要语句及功能如下表所示。语句功能说明从表或视图中检索数据是使用最频繁的SQL之一SELECTINSERT将数据插入到表或视图中既可修改表或视图的一行数据,也可UPDATE修改表或视图中的数据修改一组或全部数据DELETE从表或视图中删除数据可根据条件删除指定的数据数据控制语言DataControlLanguage,DCL:用于安全管理,确定哪些用户可以查看或修改数据库中的数据。DCL包括的主要语句及功能如下表所示。语句功能说明可把语句许可或对象许可的权限授予其他授予权限GRANT用户和角色与GRANT的功能相反,但不影响该用户或收回权限REVOKE角色从其他角色中作为成员继承许可权限收回权限,并禁止从其功能与REVOKE相似,不同之处是,除收DENY他角色继承许可权限回权限外,还禁止从其他角色继承许可权限其它语言要素Additional LanguageElements(DECLARE/OPEN/FETCH/CLOSE)这些T-SQL语言可以在SSMS的查询分析器中单独输入和运行,保存成.sqI文件(SQL脚本,用SQL语言写的批处理文件)供下次执行;也可以采用T-SQL语言把它们组织起来,作为存储过程或者触发器程序,在调用存储过程或触发器事件成立时一起执行。后者以数据库对象的形式预编译后存在数据库中,执行速度快很多。PS:GO命令不是T-SQL语句,而是SSMS查询分析器识别的命令,因此不能与T-SQL语句置于同一行,否则运行会发生错误。GO命令向SQLServer实例发送当前批T-SQL语句(结束)的信号(当前批语句由上一个GO命令后输入的所有语句组成)。如果只执行一条语句,有没有GO命令区别不大。但如果是多条语句,每个被GO隔开的语句都是一个单独的事务,其中一个事务(批语句)执行失败不会影响其它批语句的执行

语 句 功 能 说 明 CREATE 创建数据库或数据库对象 不同数据库对象,其 CREATE 语句的 语法形式不同 ALTER 对数据库或数据库对象进 行修改 不同数据库对象,其 ALTER 语句的 语法形式不同 DROP 删除数据库或数据库对象 不同数据库对象,其 DROP 语句的语 法形式不同 ◼ 数据操纵语言 Data Manipulation Language, DML:用于操纵数据库中的各种对象, 检索和修改数据。DML 包括的主要语句及功能如下表所示。 语 句 功 能 说 明 SELECT 从表或视图中检索数据 是使用最频繁的 SQL 之一 INSERT 将数据插入到表或视图中 UPDATE 修改表或视图中的数据 既可修改表或视图的一行数据,也可 修改一组或全部数据 DELETE 从表或视图中删除数据 可根据条件删除指定的数据 ◼ 数据控制语言 Data Control Language, DCL:用于安全管理,确定哪些用户可以查看 或修改数据库中的数据。DCL 包括的主要语句及功能如下表所示。 语 句 功 能 说 明 GRANT 授予权限 可把语句许可或对象许可的权限授予其他 用户和角色 REVOKE 收回权限 与 GRANT 的功能相反,但不影响该用户或 角色从其他角色中作为成员继承许可权限 DENY 收回权限,并禁止从其 他角色继承许可权限 功能与 REVOKE 相似,不同之处是,除收 回权限外,还禁止从其他角色继承许可权限 ◼ 其它语言要素 Additional Language Elements (DECLARE/OPEN/FETCH/CLOSE) 这些 T-SQL 语言可以在 SSMS 的查询分析器中单独输入和运行,保存成.sql 文件(SQL 脚本,用 SQL 语言写的批处理文件)供下次执行;也可以采用 T-SQL 语言把它们组织起来, 作为存储过程或者触发器程序,在调用存储过程或触发器事件成立时一起执行。后者以数据 库对象的形式预编译后存在数据库中,执行速度快很多。 PS:GO 命令不是 T-SQL 语句,而是 SSMS 查询分析器识别的命令,因此不能与 T-SQL 语句置于同一行,否则运行会发生错误。GO 命令向 SQL Server 实例发送当前批 T-SQL 语 句(结束)的信号(当前批语句由上一个 GO 命令后输入的所有语句组成)。如果只执行一 条语句,有没有 GO 命令区别不大。但如果是多条语句,每个被 GO 隔开的语句都是一个单 独的事务,其中一个事务(批语句)执行失败不会影响其它批语句的执行

2.2SQLServer数据库在SQLServer中有两类数据库,即系统数据库和用户数据库。系统数据库存储有关SQLServer得系统信息,它们是SQLServer管理数据库的依据。图如果系统数据库遭到破坏,那么SQLServer就不能正常启动。在安装SQLServer时系统创建了4个可见的系统数据库:master、model、msdb和tempdb。a)master数据库包含了SQLServer得登录账号、系统配置、数据库位置以及数据库错误信息等,控制用户数据库和SQLServer的运行。b)model数据库为新创建的数据库提供模板。c)msdb数据库为"SQLServer"代理调度信息和作业记录提供存储空间。d)tempdb数据库为临时表和临时存储过程提供存储空间,所有与系统连接用户的临时表和临时存储过程都存储于该数据库中。■用户数据库是用户创建的数据库。用户数据库与系统数据库结构相同,文件的扩展名也相同。2.2.1逻辑数据库VS.物理数据库SQLServer能够支持多个数据库,在一个服务器上最多可以创建32767个数据库。创建数据库的用户将成为该数据库的拥有者,数据库中的数据和各逻辑对象存储在操作系统文件或文件组中。对于用户来说,创建一个数据库并不难,但对于创建数据库前的物理存储规划和逻辑存储规划往往不够重视,导致创建的数据库在实际使用中不是很理想。对于SQLServer数据库,从不同角度所关心的内容是不同的。从使用数据库的用户角度来说,他是一个逻辑数据库,用户只需要知道如何操作它就可以,使用的主要是一些逻辑组件(对象),如表、视图、存储过程等。而对于DBA来说,还需要关心数据库多大,保存在什么地方,如何提高效率等,把数据库看成是物理数据库。数据库XYZ用户视图Table:abcTable:defTable.ghi物理实现Data2.ndata01.R(1)逻辑数据库SQLServer数据库是存储数据的容器,是一个由存放数据的表和支持这些数据的存储、检索、安全性和完整性的逻辑成分所组成得集合,组成数据库的逻辑成分称为数据库对象。SQLServer数据库对象主要包括表、视图、约束、索引、函数、存储过程和触发器等

2.2 SQL Server 数据库 在 SQL Server 中有两类数据库,即系统数据库和用户数据库。 ◼ 系统数据库存储有关 SQL Server 得系统信息,它们是 SQL Server 管理数据库的依据。 如果系统数据库遭到破坏,那么 SQL Server 就不能正常启动。在安装 SQL Server 时, 系统创建了 4 个可见的系统数据库:master、model、msdb 和 tempdb。 a) master 数据库包含了 SQL Server 得登录账号、系统配置、数据库位置以及数据库 错误信息等,控制用户数据库和 SQL Server 的运行。 b) model 数据库为新创建的数据库提供模板。 c) msdb 数据库为“SQL Server”代理调度信息和作业记录提供存储空间。 d) tempdb 数据库为临时表和临时存储过程提供存储空间,所有与系统连接用户的临 时表和临时存储过程都存储于该数据库中。 ◼ 用户数据库是用户创建的数据库。用户数据库与系统数据库结构相同,文件的扩展名也 相同。 逻辑数据库 VS. 物理数据库 SQL Server 能够支持多个数据库,在一个服务器上最多可以创建 32767 个数据库。创 建数据库的用户将成为该数据库的拥有者,数据库中的数据和各逻辑对象存储在操作系统文 件或文件组中。对于用户来说,创建一个数据库并不难,但对于创建数据库前的物理存储规 划和逻辑存储规划往往不够重视,导致创建的数据库在实际使用中不是很理想。 对于 SQL Server 数据库,从不同角度所关心的内容是不同的。从使用数据库的用户角 度来说,他是一个逻辑数据库,用户只需要知道如何操作它就可以,使用的主要是一些逻辑 组件(对象),如表、视图、存储过程等。而对于 DBA 来说,还需要关心数据库多大,保存 在什么地方,如何提高效率等,把数据库看成是物理数据库。 (1)逻辑数据库 SQL Server 数据库是存储数据的容器,是一个由存放数据的表和支持这些数据的存储、 检索、安全性和完整性的逻辑成分所组成得集合,组成数据库的逻辑成分称为数据库对象。 SQL Server 数据库对象主要包括表、视图、约束、索引、函数、存储过程和触发器等

数据库对象有两种对象名,即完全限定名和部分限定名。图完全限定名,数据库对象的全名,包括4个部分,即服务器名、数据库名、数据库架构名和对象名,其格式为:server.database.scheme.object盟部分限定名.T-SOL编程时往往很繁琐且没有必要.所以常省略全名中的某些部分。对象全名的前3各部分均可以省略,使用默认值,当省略中间的部分时,圆点符不可省略。服务器默认为本地服务器,数据库默认为当前数据库(注意!!),数据库架构为对象的容器,默认为dbo。SELECT*FROMPXSCJ.dbO.XSBSELECT*FROMPXSCJ..XSBSELECT*EFROMXSB/*将当前数据库先调整为PXSCJ*(2)物理数据库从DBA的角度来看,数据库是物理数据库,他是存储逻辑数据库的各种对象的实体。数据库的物理存储是指这些数据以什么方式存储在计算机磁盘上。a)数据库文件数据库在磁盘上是以文件为单位存储的,由数据库文件和日志文件组成。一个数据库至少包含一个主数据库文件和一个日志文件,有时还可能包括辅助数据文件和多个日志文件。-、主数据库文件,PrimaryDatabaseFile,简称主文件,正如其名字所示,该文件是数据库的关键文件,包含了数据库的启动信息,并且存储数据。每个数据库必须有且仅能有一个主文件,默认扩展名为.mdf福辅助数据库文件,SecondaryDatabaseFile,简称辅(助)文件,用于存储未包括在主文件内得其他数据。辅助文件说可选的,根据具体情况,可以创建多个辅助文件,也可以不使用辅助文件。一般当数据库很大时,有可能需要创建多个辅助文件:当数据库较小时,则只需要创建主文件,而不需要创建辅助文件。默认扩展名为.ndf。■日志文件,用于保存回复数据库所需的事物日志信息。每个数据库至少有一个日志文件,也可以有多个。扩展名为.ldf。默认实例的数据库文件存储位置是C:\ProgramFiles(x86)MicrosoftSQLServer\MSSQL10_50.MSSQLSERVERIMSSQLIDATAAEDATA文师主员共享inowCgaFiles)MicoQSMSMSSQSERMQA口格a口细t快速达间Pmastesmd2017/0/31204,096 KaOneDrie1,280.0l0171sso2017/0/3120Pmoden2.104 X0#吧航66K网路5.104XMSDBDat13610MSDBLogld PXSCI.md7/31214PXSCI_1Id2017/7/3121:44PReportServer.md2017/7/31.20.42017/7/31:20.46r togD2.304.K820rTempDBlogLD2017/1/312204Cnmpdh.md+

数据库对象有两种对象名,即完全限定名和部分限定名。 ◼ 完全限定名,数据库对象的全名,包括 4 个部分,即服务器名、数据库名、数据库 架构名和对象名,其格式为: server.database.scheme.object ◼ 部分限定名,T-SQL 编程时往往很繁琐且没有必要,所以常省略全名中的某些部分。 对象全名的前 3 各部分均可以省略,使用默认值,当省略中间的部分时,圆点符不 可省略。服务器默认为本地服务器,数据库默认为当前数据库(注意!!),数据库 架构为对象的容器,默认为 dbo。 SELECT * FROM PXSCJ.dbo.XSB SELECT * FROM PXSCJ.XSB SELECT * FROM XSB /*将当前数据库先调整为 PXSCJ*/ (2)物理数据库 从 DBA 的角度来看,数据库是物理数据库,他是存储逻辑数据库的各种对象的实体。 数据库的物理存储是指这些数据以什么方式存储在计算机磁盘上。 a) 数据库文件 数据库在磁盘上是以文件为单位存储的,由数据库文件和日志文件组成。一个数据库至 少包含一个主数据库文件和一个日志文件,有时还可能包括辅助数据文件和多个日志文件。 ◼ 主数据库文件,Primary Database File,简称主文件,正如其名字所示,该文件是数据库 的关键文件,包含了数据库的启动信息,并且存储数据。每个数据库必须有且仅能有一 个主文件,默认扩展名为.mdf ◼ 辅助数据库文件,Secondary Database File,简称辅(助)文件,用于存储未包括在主 文件内得其他数据。辅助文件说可选的,根据具体情况,可以创建多个辅助文件,也可 以不使用辅助文件。一般当数据库很大时,有可能需要创建多个辅助文件;当数据库较 小时,则只需要创建主文件,而不需要创建辅助文件。默认扩展名为.ndf。 ◼ 日志文件,用于保存回复数据库所需的事物日志信息。每个数据库至少有一个日志文件, 也可以有多个。扩展名为.ldf。 默认实例的数据库文件存储位置是: C:\Program Files (x86)\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA

b)文件组为了便于分配和管理,SQLServer允许将多个数据文件归纳为同一组,并赋予此组一个名称,这就是文件组。文件组能够控制个文件的存放位置,使数据文件可以存放在不同的硬盘驱动器上,这样可以减轻单个磁盘驱动器的负载,提高数据库的存储效率,从而提高系统性能。■主文件组PrimaryFileGroup:包含主要数据文件和任何没有明确指派给其他文件组的其他文件,每个数据库中都有一个文件组作为默认文件组运行。■用户定义文件组SecondaryFileGroup:也称为次文件组,在CREATEDATABASE或ALTERDATABASE语句中使用FILEGROUP关键字指定文件组。PS:若不指定用户定义文件组,则所有数据文件都包含在主文件组中。在设计文件和文件组时,一个文件只能属于一个文件组。只有数据文件才能作为文件组的成员,日志文件不能作为文件组的成员。2.2.2数据库基本操作(1)创建数据库创建用户数据库有两种方式。一种是通过界面方式创建数据库,另一种是通过T-SQL命令方式创建数据库。SQLServer2008中使用界面方式创建数据库主要通过SSMS窗口中提供的图形化向导来进行。首先需要明确,创建数据库必须确定数据库名、所有者(创建数据库的用户)、数据库大小(最初的大小、最大的大小、是否允许增长以及增长方式)和存储数据库的文件。一般来说,允许数据库文件能够自动增长,但要设置一个上限,否则可能充满磁盘。对于新创建的数据库,默认数据文件初始大小为3M,最大大小不受限制(仅受硬盘空间的限制),允许数据库自动增长,增量为1M:默认日志文件初始大小为1M,最大大小不受限制(仅受硬盘空间的限制),充许日志文件自动增长,增长方式按10%比例自动增长。【例2-1】使用界面方式创建数据库TEST数据文件和日志文件的属性按默认值设置。STEP1.以系统管理员身份登录计算机,在桌面上单击"开始一→所有程序一MicrosoftSQLServer2008",选择并启动SQLServerManagementStudio。使用默认的系统配置连接到数据库服务器。STEP2.选择“对象资源管理器"中服务器目录下的"数据库"目录,右击鼠标,在弹出的快捷菜单中选择新建数据库菜单项,打开“新建数据库"窗口。STEP3.“新建数据库"窗口的左上方共有三个选项卡一“常规”、“选项和"文件组",这里只配置“常规"选项卡,其他选项卡使用系统默认设置。在“数据库名称"文本框中填写要创建的数据库名称"TEST",逻辑文件名可以直接修改,路径处设置路径文件。另外,可以通过单击自动增长标签栏的按钮,在弹出的对话框中可以设置数据库是否自动增长、增长方式、数据库文件最大文件大小。数据日志文件的自动增长设置对话框与数据文件的类似

b) 文件组 为了便于分配和管理,SQL Server 允许将多个数据文件归纳为同一组,并赋予此组一个 名称,这就是文件组。文件组能够控制个文件的存放位置,使数据文件可以存放在不同的硬 盘驱动器上,这样可以减轻单个磁盘驱动器的负载,提高数据库的存储效率,从而提高系统 性能。 ◼ 主文件组 Primary File Group:包含主要数据文件和任何没有明确指派给其他文件组的 其他文件,每个数据库中都有一个文件组作为默认文件组运行。 ◼ 用户定义文件组 Secondary File Group:也称为次文件组,在 CREATE DATABASE 或 ALTER DATABASE 语句中使用 FILEGROUP 关键字指定文件组。 PS:若不指定用户定义文件组,则所有数据文件都包含在主文件组中。在设计文件和文件组 时,一个文件只能属于一个文件组。只有数据文件才能作为文件组的成员,日志文件不能作 为文件组的成员。 数据库基本操作 (1)创建数据库 创建用户数据库有两种方式。一种是通过界面方式创建数据库,另一种是通过 T-SQL 命 令方式创建数据库。SQL Server2008 中使用界面方式创建数据库主要通过 SSMS 窗口中提供 的图形化向导来进行。 首先需要明确,创建数据库必须确定数据库名、所有者(创建数据库的用户)、数据库 大小(最初的大小、最大的大小、是否允许增长以及增长方式)和存储数据库的文件。 一般来说,允许数据库文件能够自动增长,但要设置一个上限,否则可能充满磁盘。对 于新创建的数据库,默认数据文件初始大小为 3M,最大大小不受限制(仅受硬盘空间的限 制),允许数据库自动增长,增量为 1M;默认日志文件初始大小为 1M,最大大小不受限制 (仅受硬盘空间的限制),允许日志文件自动增长,增长方式按 10%比例自动增长。 【例 2-1】使用界面方式创建数据库 TEST,数据文件和日志文件的属性按默认值设置。 STEP 1. 以系统管理员身份登录计算机,在桌面上单击“开始→所有程序→Microsoft SQL Server 2008”,选择并启动 SQL Server Management Studio。使用默认的系统配置 连接到数据库服务器。 STEP 2. 选择“对象资源管理器”中服务器目录下的“数据库”目录,右击鼠标,在弹出的快捷 菜单中选择“新建数据库”菜单项,打开“新建数据库”窗口。 STEP 3. “新建数据库”窗口的左上方共有三个选项卡——“常规”、“选项”和“文件组”,这里只 配置“常规”选项卡,其他选项卡使用系统默认设置。在“数据库名称”文本框中填写 要创建的数据库名称“TEST”,逻辑文件名可以直接修改,路径处设置路径文件。另 外,可以通过单击自动增长标签栏的按钮,在弹出的对话框中可以设置数据库是否 自动增长、增长方式、数据库文件最大文件大小。数据日志文件的自动增长设置对 话框与数据文件的类似

STEP4.在对象资源管理器的"数据库"目录下找到创建完成的TEST数据库。当然也可以使用Transact-SQL命令来创建数据库。与界面方式创建数据库相比,命令方式更为常用,使用也更为灵活。对于熟练的用户来说,使用T-SQL语言创建数据库是种习惯的方法,而且这样创建的数据库便于复制。【例2-2】使用T-SQL命令创建一个名为TEST的数据库,它有两个数据文件:初始大小为5MB,最大大小为50MB,按10%比例自动增长。日志文件初始为2MB,最大大小为5MB,按1MB增长。数据文件和日志文件的存放位置为SQLServer默认实例目录下。CREATE DATABASE TESTON PRIMARYNAME-"test_1i:ProgramFiles(x86)AMicrosoftSQLServerMSSQLio50.MSSQLSERVER\MsSQLDATAVtest1.mdf!FILENAMEIZE-5MEMAXSIZE-50MEFILEGROWTH-10147FILENAMXProgramFiles(xB6)>MicrosoftSQLServer\MSSQL10_50.MSSQLSERVER/MSSQL/DATAitest2.ndf)SIZE-5MBMAXSIZE-50MFILEGROWTH-10LOGONLUFILENAME-"c:NProgramFiles(B6)MicrosoftSQL Server\MSSQL10_50.MSSQLSERVERIMSSQLIDATAVtest_log.ldf.ZE-2MBMAXSIZE-5MBFILEGROWTH-1MIGO(2)修改和删除数据库在数据库成功创建后,数据文件名和日志文件名就不能改变,存储路径也不能改变。选择需要进行修改的数据库PXSCJ,右击鼠标,在出现的快捷菜单中选择属性"菜单项。选项卡列表中包括9个选项卡。a)改变数据文件的大小和增长方式。b)增加或删除数据文件。增加:当原有数据库的存储空间不够大时,除了可以采用扩大原有数据文件存储量的方法之外,还可以增加新的数据文件。从DBA的需求出发,采用多个数据文件来存储数据以避免数据文件过大。增加的文件是辅助数据文件,文件扩展名是.ndf。删除:当数据库中某些数据文件不再需要时,应及时将其删除。只能删除辅助数据文件而不能删除主数据文件。因为在主数据文件中存放着数据库启动信息,若将其删除,数据库将无法启动。c)增加或删除文件组。增加:在“文件组"选择页中,可以添加自定义文件组。并在“文件"选择页中,允许将辅助数据库文件分配给自定义的文件组,但日志文件不能作为文件组的成员。删除:使用界面方式删除文件组,文件组中的数据库文件会随之一起被删除;而使用T-SQL命令删除文件组时,如文件组中存在数据库文件则需先删除数据库文件,再删除文件组。d)数据库的重命名:选择要重命名的数据库,右击鼠标,在弹出的快捷菜单中选择"重

STEP 4. 在对象资源管理器的“数据库”目录下找到创建完成的 TEST 数据库。 当然也可以使用 Transact-SQL 命令来创建数据库。与界面方式创建数据库相比,命令 方式更为常用,使用也更为灵活。对于熟练的用户来说,使用 T-SQL 语言创建数据库是一 种习惯的方法,而且这样创建的数据库便于复制。 【例 2-2】使用 T-SQL 命令创建一个名为 TEST 的数据库,它有两个数据文件:初始大小为 5MB,最大大小为 50MB,按 10%比例自动增长。日志文件初始为 2MB,最大大小为 5MB, 按 1MB 增长。数据文件和日志文件的存放位置为 SQL Server 默认实例目录下。 (2)修改和删除数据库 在数据库成功创建后,数据文件名和日志文件名就不能改变,存储路径也不能改变。选 择需要进行修改的数据库 PXSCJ,右击鼠标,在出现的快捷菜单中选择“属性”菜单项。选项 卡列表中包括 9 个选项卡。 a) 改变数据文件的大小和增长方式。 b) 增加或删除数据文件。 增加:当原有数据库的存储空间不够大时,除了可以采用扩大原有数据文件存储量的方 法之外,还可以增加新的数据文件。从 DBA 的需求出发,采用多个数据文件来存储数据, 以避免数据文件过大。增加的文件是辅助数据文件,文件扩展名是.ndf。 删除:当数据库中某些数据文件不再需要时,应及时将其删除。只能删除辅助数据文件, 而不能删除主数据文件。因为在主数据文件中存放着数据库启动信息,若将其删除,数据库 将无法启动。 c) 增加或删除文件组。 增加:在“文件组”选择页中,可以添加自定义文件组。并在“文件”选择页中,允许将辅 助数据库文件分配给自定义的文件组,但日志文件不能作为文件组的成员。 删除:使用界面方式删除文件组,文件组中的数据库文件会随之一起被删除;而使用 T￾SQL 命令删除文件组时,如文件组中存在数据库文件则需先删除数据库文件,再删除文件组。 d) 数据库的重命名:选择要重命名的数据库,右击鼠标,在弹出的快捷菜单中选择“重

命名菜单项,输入新的数据库名称,即可更改数据库的名称。e数据库的删除:选择要删除的数据库,右击鼠标,在弹出的快捷菜单中选择删除菜单项,单击右下角的"确定"按钮,即可删除数据库。(3)备份数据库右键数据库→任务-备份选择目标备份位置>确定即可,备份文件的后缀名为.bak。(4)还原数据库右键数据库→还原数据库→目标数据库中写上数据库名称→原设备找到还原的数据库位置→在还原处打上勾单击确定即可→数据库中可以看到还原的PXSCJ数据库

命名”菜单项,输入新的数据库名称,即可更改数据库的名称。 e) 数据库的删除:选择要删除的数据库,右击鼠标,在弹出的快捷菜单中选择“删除” 菜单项,单击右下角的“确定”按钮,即可删除数据库。 (3)备份数据库 右键数据库➔任务-备份➔选择目标备份位置➔确定即可,备份文件的后缀名为.bak。 (4)还原数据库 右键数据库➔还原数据库➔目标数据库中写上数据库名称➔原设备找到还原的数据库 位置➔在还原处打上勾单击确定即可➔数据库中可以看到还原的 PXSCJ 数据库

2.3表结构设计在创建数据库之后,就需要建立数据表。表是数据库中最基本的数据对象,用于存放数据库中的数据。每个数据库包含了若干个表,每张表都由行和列组成。在创建表之前,先要确定表的名字、表的属性,同时确定表所包含的列名(字段名)、列的数据类型(长度)、是否可为空值、约束条件、默认值设置、哪些字段是主键、哪些字段是外键等等,这些属性构成了表结构。当表中有了记录后,建议不要轻易改变表结构,特别不要改变数据类型,以免产生错误。本课程教师演示学生管理系统PXSCJ数据库,包含三个表:学生表XSB、课程表KCB、成绩表CJB,以下是这三张表的结构设计。列名长度默认值说明数据类型是否可空6X学号无主键char8姓名x无char性别2X无char“男“或"女”18x无身份证号唯一性charV默认值无出生日期date专业20无charVint0总学分默认值[0,160]V备注200无varchar列名长度默认值说明数据类型是否可空3X无主键课程编号charx无20唯一性课程名称charV11开课学期[1,8]tinyint2V0学时smallint学分1x0tinyint长度列名数据类型是否可空默认值说明6X无学号主键,外键char3X无课程编号char主键,外键V0成绩int默认值[0, 100]

2.3 表结构设计 在创建数据库之后,就需要建立数据表。表是数据库中最基本的数据对象,用于存放数 据库中的数据。每个数据库包含了若干个表,每张表都由行和列组成。 在创建表之前,先要确定表的名字、表的属性,同时确定表所包含的列名(字段名)、 列的数据类型(长度)、是否可为空值、约束条件、默认值设置、哪些字段是主键、哪些字 段是外键等等,这些属性构成了表结构。当表中有了记录后,建议不要轻易改变表结构,特 别不要改变数据类型,以免产生错误。 本课程教师演示学生管理系统 PXSCJ 数据库,包含三个表:学生表 XSB、课程表 KCB、 成绩表 CJB,以下是这三张表的结构设计。 列名 数据类型 长度 是否可空 默认值 说明 学号 char 6 Χ 无 主键 姓名 char 8 Χ 无 性别 char 2 Χ 无 “男“或”女“ 身份证号 char 18 Χ 无 唯一性 出生日期 date 默认值 √ 无 专业 char 20 √ 无 总学分 int 默认值 √ 0 [ 0, 160 ] 备注 varchar 200 √ 无 列名 数据类型 长度 是否可空 默认值 说明 课程编号 char 3 Χ 无 主键 课程名称 char 20 Χ 无 唯一性 开课学期 tinyint 1 √ 1 [ 1, 8 ] 学时 smallint 2 √ 0 学分 tinyint 1 Χ 0 列名 数据类型 长度 是否可空 默认值 说明 学号 char 6 Χ 无 主键,外键 课程编号 char 3 Χ 无 主键,外键 成绩 int 默认值 √ 0 [ 0, 100 ]

共28页,试读已结束,阅读完整版请下载
刷新页面下载完整文档
VIP每日下载上限内不扣除下载券和下载次数;
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
相关文档