第3章创建和管理数据库_第1页
第3章创建和管理数据库_第2页
第3章创建和管理数据库_第3页
第3章创建和管理数据库_第4页
第3章创建和管理数据库_第5页
已阅读5页,还剩47页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第3章创建和管理数据库 SQL Server 2008 数据库管理与开发教程 第第3章章 创建和管理数据库(创建和管理数据库(1) 第3章创建和管理数据库 本章主要介绍使用本章主要介绍使用Transact-SQL语句语句 和使用企业管理器创建数据库、修改数据和使用企业管理器创建数据库、修改数据 库和删除数据库的过程。库和删除数据库的过程。 通过本章的学习,读者可以熟悉通过本章的学习,读者可以熟悉SQL Server 2008数据库的组成元素,并能够掌数据库的组成元素,并能够掌 握创建和管理数据库的方法。握创建和管理数据库的方法。 第3章创建和管理数据库 3.13.1认识数据库认识数据库 3.2

2、3.2SQL ServerSQL Server的命名规范的命名规范 3.33.3数据库操作数据库操作 3.43.4数据表操作数据表操作 3.53.5表与表之间的关联表与表之间的关联 第3章创建和管理数据库 3.1认识数据库认识数据库 3.1.1 3.1.1数据库基本概念数据库基本概念 什么是数据库(什么是数据库(DatabaseDatabase,DBDB) 1. 1. 存放数据的仓库存放数据的仓库 2. 2. 存在于计算机的存储设备上存在于计算机的存储设备上 3. 3. 数据是按照一定的数据模型组织的一组相关数据的集合数据是按照一定的数据模型组织的一组相关数据的集合 4. 4. 数据可以被共享

3、数据可以被共享 数据库是长期存储在计算机内,有组织的、大量的、可共享数据库是长期存储在计算机内,有组织的、大量的、可共享 的数据集合。数据库中的数据按一定的数据模型组织、描述的数据集合。数据库中的数据按一定的数据模型组织、描述 和存储,具有较小的冗余度、较高的数据独立性和易扩展性和存储,具有较小的冗余度、较高的数据独立性和易扩展性 ,并可为用户共享。,并可为用户共享。 第3章创建和管理数据库 数据库的优点主要体现在以下几方面:数据库的优点主要体现在以下几方面: (1)减少数据的冗余度,节省数据的存储)减少数据的冗余度,节省数据的存储 空间。空间。 (2)具有较高的数据独立性和易扩充性。)具有较

4、高的数据独立性和易扩充性。 (3)实现数据资源的充分共享。)实现数据资源的充分共享。 第3章创建和管理数据库 什么是数据库管理系统(什么是数据库管理系统(Database Management System,DBMS) 数据分为两种:数据分为两种: 1. 用户可以直接使用的数据;用户可以直接使用的数据; 2. 有关数据库的定义信息数据,如数据库的名称,表的定有关数据库的定义信息数据,如数据库的名称,表的定 义,数据库用户名及密码、权限等。义,数据库用户名及密码、权限等。 问题问题1:如何建立一个容器,来存放数据?:如何建立一个容器,来存放数据? 问题问题2:如何把数据装入容器?:如何把数据装入

5、容器? 问题问题3:如何从:如何从1万条数据中,挑选出万条数据中,挑选出1千条数据进行排序?千条数据进行排序? 数据库管理系统(数据库管理系统(DBMS) 第3章创建和管理数据库 什么是数据库管理系统(什么是数据库管理系统(Database Management System,DBMS) 1. DBMS是指数据库系统中对数据进行管理的软件系统,是指数据库系统中对数据进行管理的软件系统, 它是数据库系统的核心组成部分,数据库系统的一切操作它是数据库系统的核心组成部分,数据库系统的一切操作 ,包括查询、更新及各种控制,都是通过,包括查询、更新及各种控制,都是通过DBMS进行的。进行的。 2. DB

6、MS是基于数据模型的,根据所采用数据模型的不同是基于数据模型的,根据所采用数据模型的不同 ,DBMS可以分成网状型、层次型、关系型、面向对象型可以分成网状型、层次型、关系型、面向对象型 等。等。 3. DBMS的主要目标是使数据成为一种可管理的资源。的主要目标是使数据成为一种可管理的资源。 第3章创建和管理数据库 什么是数据库系统(什么是数据库系统(Database System,DBS ) 1. 数据库数据库 2. 数据库管理系统,及其开发工具数据库管理系统,及其开发工具 3. 数据库管理员(数据库管理员(Database Administrator,DBA) 以及其他相关数据人员以及其他相

7、关数据人员 4. 硬件平台硬件平台 5. 软件平台软件平台 第3章创建和管理数据库 关系数据库关系数据库 是创建在关系模型基础上的数据库,借助于集合代 数等数学概念和方法来处理数据库中的数据。现实 世界中的各种实体以及实体之间的各种联系均用关 系模型来表示。 关系模型由关系数据结构、关系操作集合、关系完 整性约束三部分组成。 第3章创建和管理数据库 3.1.2 3.1.2数据库常用对象数据库常用对象 主要的数据库对象主要的数据库对象 数据:表、视图、索引数据:表、视图、索引 完整性:类型、规则、完整性:类型、规则、 默认值默认值 程序:存储过程、函数程序:存储过程、函数 安全:用户、角色安全:

8、用户、角色 第3章创建和管理数据库 3.1.3 3.1.3数据库组成数据库组成 数据库主要由文件和文件组组成。数据库主要由文件和文件组组成。 (1 1)文件)文件 主要数据文件主要数据文件 (.mdf) 次要数据文件次要数据文件 (.ndf)可选可选 事务日志文件事务日志文件 (.ldf) 每个每个 SQL Server 数据库至少具有两个系统文件:一个主数据库至少具有两个系统文件:一个主 数据文件和一个事务日志文件。数据文件和一个事务日志文件。 数据文件包含数据和对象,例如表、索引、存储过程和视 图。 事务事务日志文件包含恢复数据库中的所有事务所需的 信息。 第3章创建和管理数据库 练习:查

9、看练习:查看MasterMaster数据库的主数据文件和事务日志文件。数据库的主数据文件和事务日志文件。 第3章创建和管理数据库 数据文件的存储结构数据文件的存储结构 从SQL Server 2008数 据库的物理架构上来 看,SQL Server用于 存储数据的基本单位 是页,每页容量为8KB。 SQL Server将8个物理 上连续的页组成一个 区,以此可以更加有 效地管理数据页。 第3章创建和管理数据库 (2 2)文件组)文件组 文件组就是一堆文件的一个总称,就像黑文件组就是一堆文件的一个总称,就像黑 种人,白种人,黄种人,是一堆人的总称种人,白种人,黄种人,是一堆人的总称 ,但以颜色来

10、标识,这就是逻辑上的分类,但以颜色来标识,这就是逻辑上的分类 。文件组也是一样,只是逻辑上的分组,。文件组也是一样,只是逻辑上的分组, 一个数据库可以看成很多个文件构成一个一个数据库可以看成很多个文件构成一个 逻辑空间,它的数据越存越多,加入新的逻辑空间,它的数据越存越多,加入新的 文件就越来越多,这些文件就可以作为一文件就越来越多,这些文件就可以作为一 个组来管理。个组来管理。 第3章创建和管理数据库 为便于分配和管理,可以将数据库对象和文件一 起分成文件组。有两种类型的文件组: 主文件组(主文件组(Primary ):主文件组包含主数据文件和):主文件组包含主数据文件和 任何没有明确分配给

11、其他文件组的其他文件。系统表的所任何没有明确分配给其他文件组的其他文件。系统表的所 有页均分配在主文件组中。有页均分配在主文件组中。 用户定义文件组:用户定义文件组是通过在用户定义文件组:用户定义文件组是通过在 CREATE DATABASE 或或 ALTER DATABASE 语句中使用语句中使用 关键字关键字 指定的任何文件组。指定的任何文件组。 第3章创建和管理数据库 练习:查看数据库的默认文件组是练习:查看数据库的默认文件组是PRIMARYPRIMARY。 第3章创建和管理数据库 创建的第一个数据文件叫创建的第一个数据文件叫Primary,Primary,后缀是后缀是.mdf.mdf;

12、其后创建;其后创建 的都是的都是.ndf.ndf; 系统表相关的都存放在系统表相关的都存放在PrimaryPrimary文件中。文件中。 数据文件默认放在第一个文件组中,这个文件组默认的名数据文件默认放在第一个文件组中,这个文件组默认的名 称是称是PrimaryPrimary;你可以新创建文件组(比如叫;你可以新创建文件组(比如叫Second)Second),并,并 将随后添加的数据文件放在这个文件组中。将随后添加的数据文件放在这个文件组中。 文件组上有个属性叫文件组上有个属性叫“默认(默认(DeafultDeafult)”,它的作用是,它的作用是 告诉告诉DBDB在创建表时默认使用哪个文件组

13、;比如:刚开始,在创建表时默认使用哪个文件组;比如:刚开始, 数据库的默认文件组是数据库的默认文件组是PrimaryPrimary,这时候,这时候DDLDDL语句创建的对语句创建的对 象都放在象都放在PrimaryPrimary文件组中;你可以修改你文件组中;你可以修改你SecondSecond的文件的文件 组为组为“DefaultDefault”,这样随后新创建的对象都会放到这个文,这样随后新创建的对象都会放到这个文 件组中。件组中。 第3章创建和管理数据库 对文件进行分组时,一定要遵循文件和对文件进行分组时,一定要遵循文件和 文件组的设计规则。文件组的设计规则。 文件只能是一个文件组的成员

14、。文件只能是一个文件组的成员。 文件或文件组不能由一个以上的数据库文件或文件组不能由一个以上的数据库 使用。使用。 数据和事务日志信息不能属于同一文件数据和事务日志信息不能属于同一文件 或或 文件组。文件组。 日志文件不能作为文件组的一部分,日志文件不能作为文件组的一部分, 日志空间与数据空间分开管理。日志空间与数据空间分开管理。 第3章创建和管理数据库 3.1.4 3.1.4系统数据库系统数据库 4 4个内置的数据库是:个内置的数据库是: (1)Master数据库数据库 (2)Tempdb数据库数据库 (3)Model数据库数据库 (4)Msdb数据库数据库 第3章创建和管理数据库 mast

15、ermaster数据库。存放所有的登录帐户、链接数据库。存放所有的登录帐户、链接 服务器和系统配置设置信息,存储了数据服务器和系统配置设置信息,存储了数据 库的启动信息和库的启动信息和SQL ServerSQL Server实例的初始化实例的初始化 信息。信息。 tempdbtempdb数据库。用来保存临时对象和中间结数据库。用来保存临时对象和中间结 果集。如:临时表、存储过程、表变量或果集。如:临时表、存储过程、表变量或 游标等。该数据库在游标等。该数据库在SQL ServerSQL Server每次启动每次启动 时都重新创建。临时表和存储过程在连接时都重新创建。临时表和存储过程在连接 断开

16、时自动删除。断开时自动删除。 第3章创建和管理数据库 modelmodel数据库。存放系统创建的所有数据库数据库。存放系统创建的所有数据库 的模板。当创建数据库时,新数据库的默的模板。当创建数据库时,新数据库的默 认部分通过复制认部分通过复制modelmodel数据库中的内容创数据库中的内容创 建,剩余部分再填充。建,剩余部分再填充。 msdbmsdb数据库。提供数据库。提供SQL Server Agent(SQL Server Agent(代理代理 ) )程序计划警报和作业调度信息程序计划警报和作业调度信息。 第3章创建和管理数据库 3.2SQL Server的命名规范的命名规范 1标识符格

17、式标识符格式 数据库对象的名称即为其标识符。 Microsoft SQL Server 中的所有内容都可以有标识符。 服 务器、数据库和数据库对象(例如表、视图、列、 索引、触发器、过程、约束及规则等)都可以有 标识符。大多数对象要求有标识符,但对有些对 象(例如约束),标识符是可选的。 数据库名是一个标识符,表名也是一个标识符。数据库名是一个标识符,表名也是一个标识符。 第3章创建和管理数据库 定义标识符时遵守的规定定义标识符时遵守的规定 (1)标识符的首字符必须是下列字符之一。)标识符的首字符必须是下列字符之一。 统一码(统一码(Unicode)2.0标准中所定义的字母,包括拉丁标准中所定

18、义的字母,包括拉丁 字母字母a-z和和A-Z(不区分大小写),以及来自其他语言的字(不区分大小写),以及来自其他语言的字 符符,如表如表“学生基本情况表学生基本情况表”、“cct_cj”等。等。 下划线下划线“_”、符号、符号“”或者数字符号或者数字符号“#”。 在在SQL Server中,某些处于标识符开始位置的符号具有中,某些处于标识符开始位置的符号具有 特殊意义。以特殊意义。以“”符号开始的标识符表示局部变量或参符号开始的标识符表示局部变量或参 数;数; 系统全局变量,以一个数字符号系统全局变量,以一个数字符号“#”开始的标开始的标 识符表示临时表或过程,如表识符表示临时表或过程,如表“

19、#glxy”就是一张临时表;就是一张临时表; 以双数字符号以双数字符号“#”开始的标识符表示全局临时对象,如开始的标识符表示全局临时对象,如 表表“#glxy2”则是全局临时表。则是全局临时表。 第3章创建和管理数据库 符号:符号:“_、 、#” “_”:作为开头和英文字母没有区别:作为开头和英文字母没有区别 “”:只能作局部变量:只能作局部变量 “”:系统全局变量:系统全局变量 “#”:作为临时表或过程名:作为临时表或过程名 “#”:作为全局临时对象:作为全局临时对象 第3章创建和管理数据库 (2)标识符的后续字符可以是以下)标识符的后续字符可以是以下3种。种。 统一码(统一码(Unicod

20、e)2.0标准中所定义的字母。标准中所定义的字母。 来自拉丁字母或其他国家来自拉丁字母或其他国家/地区脚本的十进制地区脚本的十进制 数字,包括数字数字,包括数字:09(但数字不得作为标识(但数字不得作为标识 符的第一个字符)。符的第一个字符)。 “”符号、美元符号符号、美元符号“$”、数字符号、数字符号“#” 或下划线或下划线“_”。 注意:美元符号注意:美元符号“$”不能作为首字符。不能作为首字符。 第3章创建和管理数据库 (3)标识符不允许是)标识符不允许是Transact-SQL的的 保留字(保留字(select、from、where、 delete等等)。等等)。 (4)不允许嵌入空格

21、或其他特殊字符。)不允许嵌入空格或其他特殊字符。 第3章创建和管理数据库 请同学们分别找出合格和不合格的标识符请同学们分别找出合格和不合格的标识符 Name Name、 123Product 123Product 、_ Product _ Product 、 this Product this Product 、No_123No_123、 $ABC $ABC 、a12、 #qq 合格:合格:NameName、_ Product_ Product、No_123No_123、a12a12、 #qq #qq 不合格:不合格:123Product123Product、this Productthis

22、Product、 $ABC $ABC 第3章创建和管理数据库 标识符分类 2、标识符分类标识符分类 常规标识符:符合标识符的格式规则。常规标识符:符合标识符的格式规则。 SELECT * From Table_x WHERE KeyNo= 124 分隔标识符:包含在双引号分隔标识符:包含在双引号(“”)或者方括号或者方括号 ( )内的标识符。该标识符可以不符合标识内的标识符。该标识符可以不符合标识 符的格式规则,如符的格式规则,如gxun glxy、gxun和和glxy 之间含有空格,但因为使用了方括号,所以之间含有空格,但因为使用了方括号,所以 视为分隔标识符。视为分隔标识符。 第3章创建和

23、管理数据库 例如:例如: 被引用的标识符用双引号被引用的标识符用双引号 () 分隔开:分隔开: SELECT * FROM Blanks in Table Name 括在括号中的标识符用方括号括在括号中的标识符用方括号 ( ) 分隔:分隔: SELECT * FROM Blanks In Table Name 第3章创建和管理数据库 3.2.2 对象命名规则 对象名格式 serverserver.databasedatabase.owner_nameowner_name. . object_nameobject_name ServerServer:指定链接服务器名称或远程服务器名称。指定链接服

24、务器名称或远程服务器名称。 DatabaseDatabase: 指定数据库的名称。指定数据库的名称。 owner_nameowner_name: 指定拥有该对象的用户。指定拥有该对象的用户。 object_nameobject_name: 引用对象的名称。引用对象的名称。 例如:例如:Server.databasedatabase.glxy.object; 第3章创建和管理数据库 对象名的有效格式如下:对象名的有效格式如下: server.database.owner_name.object_name server.database.object_name server.owner_name.

25、object_name server.object_name database.owner_name.object_name database.object_name owner_name.object_name object_name 第3章创建和管理数据库 Server和database的省 略一般不会出现大的问 题,但是省略了glxy的 时候,SQL Server一般 会假定是已登录的用户 的名称空间。如果没有 明确的指派,一般又会 给新用户默认的Dbo构 架。 第3章创建和管理数据库 有个例子,如果用户F8登录进服务器glxysql2008 ,它的数据库上下文设定为AdventureW

26、orks2008 ,由于没有为F8指派一个用户定义架构,他存在 于默认的dbo构架中。 如果F8的查询Person表: Select Select * from Person; 这个就会被解析成为: glxysql2008.AdventureWorks2008.dbo.Person. 第3章创建和管理数据库 3.2.3 实例命名规则 默认实例默认实例 此实例由运行它的计算机的网络名称(如此实例由运行它的计算机的网络名称(如A6)标识。使)标识。使 用以前版本用以前版本SQL Server客户端软件的应用程序可以连接客户端软件的应用程序可以连接 到默认实例。到默认实例。SQL Server 6.

27、5版或版或SQL Server 7.0版服务版服务 器可作为默认实例操作。但是,一台计算机上每次只能有器可作为默认实例操作。但是,一台计算机上每次只能有 一个版本作为默认实例运行。一个版本作为默认实例运行。 命名实例命名实例 计算机可以同时运行任意个计算机可以同时运行任意个SQL Server命名实例。实例命名实例。实例 通过计算机的网络名称加上实例名称以通过计算机的网络名称加上实例名称以格式进行标识,即格式进行标识,即 computer_nameinstance_name,但该实例名不能超过,但该实例名不能超过 16个字符。个字符。 第3章创建和管理数据库 查看我们自己定义的 命名实例: GLXYTRRglxy_sql2008 第3章创建和管理数据库 3.3 数据库操作 3.3.1 创建数据库的两种方式创建数据库的两种方式 1. 以界面方式创建数据库以界面方式创建数据库 第3章创建和管理数据库 图图3.1 新建数据库新建数据库 第3章创建和管理数据库 图图3.2 创建数据库名称创建数据库名称 第3章创建和管理数据库 使用使用CREATE DATABASE语句创建数据库语句创建数据库 语法:语法:CREATE DATABASE database_name 注意:注意:database_name

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论