数据库的基本操作.ppt
《数据库的基本操作.ppt》由会员分享,可在线阅读,更多相关《数据库的基本操作.ppt(35页珍藏版)》请在三一办公上搜索。
1、第三章数据库的基本操作,3.1 SQL Server数据库的基本知识和概念,3.2 创建数据库,3.3 管理数据库,3.4 应用举例,第三章,目录,3.1.1 SQL Server的数据库SQL Server 2005数据库就是有组织的数据的集合,这种数据集合具有逻辑结构并得到数据库系统的管理和维护。SQL Server 2005通过允许创建并存储其他对象类型(如存储过程、触发器、视图等)扩展了数据库的概念。数据库的数据按不同的形式组织在一起,构成了不同的数据库对象。数据库是数据库对象的容器。当连接到数据库服务器后,看到的这些对象都是逻辑对象,而不是存放在物理磁盘上的文件,数据库对象没有对应的
2、磁盘文件,整个数据库对应磁盘上的文件与文件组,如图3-1所示。数据、表、存储过程、触发器、视图、规则、默认值、用户定义数据类型、索引、权限、数据库用户、数据库规则等对象,图3.1 数据库、数据库对象及文件,3.1 SQL Server数据库的基本知识和概念,第三章,SQL Server 2005是一种采用T-SQL语言的大型关系型数据库管理系统。本章我们将学习创建并管理数据库和文件组,掌握优化SQL Server的技巧,并讨论SQL Server存储数据的方法。,要想熟练掌握管理SQL Server 2005的技术,我们就有必要理解掌握SQL Server 2005数据库的基本知识和概念。,3
3、.1.2 SQL Server 的事务日志,事务是一组T-SQL语句的集合,这组语句作为单个的工作与恢复的单元。事务作为一个整体来执行,对于其数据的修改,要么全都执行,要么全都不执行。例如,带两个存折去银行转存,将A存折的2 000元转入B存折中,银行工作人员将从A存折中取出2 000元,然后将这2000元存入B存折中。这两个操作应该作为一个事务来处理,存与取的操作要么都做,要么都不做。否则,就会出现客户不愿意接受的已取但未存的结果或者银行不愿意接受的未取但已存的结果。,第三章,事务日志是数据库中已发生的所有修改和执行每次修改的事务的一连串记录。为了维护数据的一致性,并且便于进行数据库恢复,S
4、QL Server将各种类型的事务记录在事务日志中。SQL Server自动使用预写类型的事务日志。这就是说在执行一定的更改操作之后,并且在这种更改写进数据库之前,SQL Server先把相关的更改写进事务日志。,下面以删除学生数据库中学生基本信息表的某条记录为例,介绍事务日志记录更改数据的流程:(1)应用程序发送删除学生基本表中某一条记录的请求。(2)在执行更改的时候,将受到影响的页面由磁盘调入内存中。(3)在内存中的数据更改之前,设置开始标记,将更改语句及数据记录到事务日志中,设置结束标记(日志直接写入磁盘)。(3)检查点进程将所有完成的事务写回磁盘数据库,事务日志一直处于工作状态,审计多
5、种事件信息。(4)如果发生系统故障,通过利用事务日志,自动恢复进程将向前展示所有已提交的事务。在自动恢复中,事务日志中的标记用来确定事务的起始点与终止点。当出现检查点的时候,数据页将写入磁盘中。,3.1.3 SQL Server 数据库文件及文件组,1SQL Server数据库文件的三种类型数据库文件是存放数据库数据和数据库对象的文件。一个数据库可以有一个或多个数据库文件,一个数据库文件只属于一个数据库。SQL Server数据库文件根据其作用不同,可以分为以下三种文件类型:(1)主要数据文件(primary file):用来存储数据库的数据和数据库的启动信息。主要数据文件是SQL Serve
6、r数据库的主体,其默认扩展名为“.mdf”,它是每个数据库不可缺少的部分,而且每个数据库只能有一个主要数据文件。主要数据文件中包含了其他数据库文件的信息。实际的文件都有两种名称:操作系统文件名和逻辑文件名(T-SQL语句中使用)。(2)次要数据文件(secondary file):用来存储主要数据文件没有存储的其他数据,使用次要数据文件可以扩展存储空间。如果数据库用一个主要数据文件和多个次要数据文件来存储数据,并将它们放在不同的物理磁盘中,数据库的总容量就是这几个磁盘容量之和。次要数据文件的扩展名为“.ndf”。(3)事务日志文件(transaction log):事务日志文件是用来记录数据库
7、更新情况的文件,扩展名为“.ldf”,每个数据库至少要有一个事务日志文件,事务日志文件不属于任何文件组。凡是对数据库进行的增、删、改等操作,都会记录在事务日志文件中。当数据库被破坏时可以利用事务日志文件恢复数据库的数据。SQL Server中采用“提前写”方式的事务,即对数据库的修改先写入事务日志,再写入数据库。,第三章,SQL Server数据库是数据库对象的容器,它以操作系统文件的形式存储在磁盘中。在SQL Server中数据库是由数据库文件和事务日志文件组成的。一个数据库至少应包含一个数据库文件和一个事务日志文件。,2SQL Server的数据库文件组 文件组是将多个数据库文件集合起来形
8、成的一个整体。每个文件组有一个组名。文件组分为主文件组(primary)、自定义文件组(user_defined)和默认文件组(default)。一个文件只能存在于一个文件组中,一个文件组也只能被一个数据库使用,日志文件不属于任何文件组。主文件组中包含了所有的系统表,自定义文件组包含所有在使用CREATE DATABASE或ALTER DATABASE时使用FILEGROUP关键字进行约束的文件,默认文件组容纳所有在创建时没有指定文件组的表、索引以及text、ntext、image数据类型的数据,任何时候只能有一个文件组被指定为默认文件组。默认情况下,主文件组被当做默认文件组。为了提高数据的查
9、询速度,便于数据库的维护,SQL Server可以将多个数据文件组成一个或多个文件组。例如,在三个不同的磁盘(如D盘、E盘、F盘)中建立三个数据文件(student_data1.mdf,student_data2.mdf,student_data3.mdf),并将这三个文件指派到文件组fgroup1中,如图3-2所示。如果在此数据库中创建表,就可以指定该表放在fgroup1中。,通过使用文件组可以简化数据库的维护工作:备份和恢复单独的文件或文件组,而并非数据库,如此可以提高效率。将可维护性要求相近的表和索引分配到相同的文件组中。为自己的文件组指定高维护性的表。在创建数据库时,默认设置是将数据文
10、件存储在主文件组中(primary)。也可以在创建数据库时加相应的关键字创建文件组。,学生数据库,D:mspdatastudent_data1.mdf,E:mspdatastudent_data2.mdf,F:mspdatastudent_data3.mdf,D:mspdatastudent_log1.ldf,E:mspdatastudent_log2.ldf,F:mspdatastudent_log3.ldf,当对数据库对象进行写操作时,数据库会根据组内数据文件的大小,按比例写入组内所有数据文件中。当查询数据时,SQL Server系统会创建多个单独的线程来并行读取分配在不同物理硬盘中的每个
11、文件,从而在一定程度上提高了查询速度。,图3-2 数据库与操作系统文件之间的映射,3.1.4 SQL Server 的系统数据库,1master数据库 master数据库是SQL Server的主数据库,记录了SQL Server系统的所有系统信息,如所有的系统配置信息、登录信息、用户数据库信息、SQL Server初始化信息等。2tempdb数据库 tempdb数据库为临时表和其他临时存储需求提供存储空间,是一个由SQL Server中所有数据库共享使用的工作空间。当用户离开或系统关机时,临时数据库中创建的临时表将被删除,当它的空间不够时,系统会自动增加它的空间。临时数据库是系统中负担较重的
12、数据库,可以通过将其置于RAM中以提高数据库的性能。在tempdb数据库中所做的操作不会被记录,因而在tempdb数据库中的表上进行数据操作比在其他数据库中要快得多。当退出SQL Server时,用户在tempdb数据库中建立的所有对象都将被删除,每次SQL Server启动时,tempdb数据库都将被重建恢复到系统设定的初始状态,因此千万不要将tempdb数据库作为数据的最终存放处。,第三章,在SQL Server管理控制台下,我们会看到系统数据库下的master、tempdb、model、msdb四个系统数据库,它们是在安装SQL Server时系统自动安装的。这些系统数据库的文件存储在S
13、QL Server默认安装目录(MSSQL)中的Data文件夹中。,3model数据库 model数据库是创建所有用户数据库和tempdb数据库的模板文件。model数据库中包含每个数据库所需的系统表格,是SQL Server 2005中的模板数据库。当创建一个用户数据库时,模板数据库中的内容会自动复制到所创建的用户数据库中,所以利用model数据库的模板特性,通过更改model数据库的设置,并将经常使用的数据库对象复制到model数据库中,可以简化数据库及其对象的创建、设置工作,为用户节省大量的时间。可以通过修改模板数据库中的表格,来实现用户自定义配置新建数据库的对象。4msdb数据库 ms
14、db数据库在SQL Server代理程序调度报警和作业时使用。,3.2 创建数据库,SQL Server 2000数据库是有组织的数据的集合,是存储过程、触发器、视图和规则等数据库对象的容器。在第1章数据库技术基础中,我们设计了选课管理信息系统数据库,命名为student,该数据库中有学生基本信息表、课程表、教师表、学在开发SQL Server 2005数据库应用程序之前,首先要设计数据库结构并创建数据库。创建数据库时需要对数据库的属性进行设置,包括数据库的名称、所有者、大小以及存储该数据库的文件和文件组。SQL Server 2005数据库是有组织的数据的集合,是存储过程、触发器、视图和规则
15、等数据库对象的容器。在第1章数据库技术基础中,我们设计了选课管理信息系统数据库,命名为student,该数据库中有“学生基本信息”表、“课程”表、“教师”表、“学生选课”表、“教师任课”表、“教学计划”表等。本节将以建立student数据库为例,讲解用SQL Server管理控制台和T-SQL语言创建数据库的方法。生选课表、教师任课表、教学计划表等。本节我们以建立学生数据库为例,讲解用企业管理器图形界面与T-SQL语言创建数据库的方法。,第三章,在开发SQL Server 2000数据库应用程序之前,首先要设计数据库结构并创建数据库。创建数据库时需要对数据库的属性进行设置,包括数据库的名称、所
16、有者、大小以及存储该数据库的文件和文件组。,3.2.1 用企业管理器创建数据库,3.2.1 使用SQL Server管理控制台创建数据库 通过SQL Server Management Studio创建数据库的操作步骤如下:(1)打开“SQL Server Management Studio”窗口,右击“对象资源管理器”窗格中的“数据库”结点,在弹出的快捷菜单中选择“新建数据库”命令,如图3-3所示。,第三章,图3-3“新建数据库”命令,(2)此时将打开如图3-4所示的“新建数据库”对话框,它由“常规”、“选项”和“文件组”三个选项组成。在“常规”选项的“数据库名称”文本框中输入要创建的数据库
17、名称:student。,(3)在各个选项中,可以指定它们的参数值,例如,在“常规”选项中,可以指定数据库名称、数据库的逻辑名、文件组、初始容量、增长方式和文件存储路径等。(4)单击“确定”按钮,在“数据库”的树形结构中,就可看到刚创建的student数据库,如图3-5所示。,图3-4“新建数据库”对话框,图3-5 新创建的student数据库,3.2.2 使用T-SQL语句创建数据库,第三章,除了采用SQL Server Management Studio管理工具创建数据库外,还可以在SQL Server Management Studio集成的查询分析器中使用T-SQL语言中的CREATED
18、ATABASE语句创建数据库,CREATE DATABASE的常用语法格式如下:,CREATE DATABASE datebase_name ON PRIMARY(NAME=logical_file_name,FILENAME=os_file_name,SIZE=size,MAXSIZE=max_size|UNLIMITED,FILEGROWTH=grow_increment),n LOG ON(NAME=logical_file_name,FILENAME=os_file_name,SIZE=size,MAXSIZE=max_size|UNLIMITED,FILEGROWTH=grow_in
19、crement),n COLLATE collation_name,在以上的语法格式中,“”表示该项可省略,省略时各参数取默认值,“,n”表示大括号括起来的内容可以重复写多次。SQL语句在书写时不区分大小写,为了清晰,一般都用大写表示系统保留字,用小写表示用户自定义的名称。,database_name是要建立的数据库的名称。PRIMARY在主文件组中指定文件。若没有指定PRIMARY关键字,该语句中所列的第一个文件成为主文件。LOG ON指定建立数据库的事务日志文件。NAME指定数据或事务日志文件的名称。FILENAME指定文件的操作系统文件名称和路径。os_file_name中的路径必须为安
20、装SQL Server服务器的计算机上的文件夹。SIZE指定数据或日志文件的大小,默认单位为KB,也可以指定用MB。如果没有指定长度,则默认是1MB。MAXSIZE指定文件能够增长到的最大长度,默认单位为KB,也可以指定用MB单位。如果没有指定长度,文件将一直增长到磁盘满为止。FILEGROWTH指定文件的增长量,该参数不能超过MAXSIZE的值。默认单位为KB,可以指定用MB,也可以使用百分比。如果没有指定参数,默认为10%,最小为64KB。COLLATE指定数据库的默认排序规则。,第三章,一条语句可以写在多行上,但不能多条语句写在一行上。创建数据库最简单的语句是“CREATE DATABA
21、SE 数据库名”。其中:,【例3.1】创建数据库名为“jsjx_db”的数据库,包含一个主要数据文件和一个事务日志文件。主要数据文件的逻辑名为“jsjx_db_data”,操作系统文件名为“jsjx_db_data.mdf”,初始容量大小为5MB,最大容量为20MB,文件的增长量为20%。事务日志文件的逻辑文件名为“jsjx_db_log”,物理文件名为“jsjx_db_log.ldf”,初始容量大小为5MB,最大容量为10MB,文件的增长量为2MB,最大不受限制。数据文件与事务日志文件都放在E盘根目录下。,用CREATE DATABASE语句创建数据库的操作步骤如下:(1)在“SQL Ser
22、ver Management Studio”窗口中集成的查询分析器的“查询”窗格中输入如下代码:CREATE DATABASE jsjx_dbON PRIMARY(NAME=jsjx_db_data,FILENAME=E:jsjx_db_data.mdf,SIZE=5mb,MAXSIZE=20MB,FILEGROWTH=20%)LOG ON,(NAME=jsjx_db_log,FILENAME=E:jsjx_db_log.ldf,SIZE=10MB,FILEGROWTH=2MB)COLLATE Chinese_PRC_CI_ASGO,(2)输入上述代码后,单击工具栏中的“分析”按钮,对输入的代
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 基本 操作
链接地址:https://www.31ppt.com/p-5985678.html