2024年4月22日发(作者:齐高岑)
1
数据库原理实验学期总结
班级
摘要
学习数据库已经有一个学期的时间,经过一个学期的SQL Server 2000课程的学习,
老师在课堂上耐心、细致的讲解,以及内容详细、层次鲜明、易于记忆和理解的教学
课件,让我了解了SQL Server 2000的基础知识,学会了创建数据库以及对数据库操
作的一些基本应用,现就所学到知识作出以下的学习心得总结:
SQL Server 是一个关系数据库管理系统,SQL Server 2000 是Microsoft 公司推出的
SQL Server 数据库管理系统的一个版本,具有使用方便,可伸缩性好与相关软件集成程度高
等优点,可跨越从运行Microsoft Windows 98 的膝上型电脑到运行Microsoft WindowsXP
的大型多处理器的服务器等多种平台使用。
一、
数据库实验的主要意义的目的
数据库是数据管理的最新技术,是计算机科学的重要分支。目前,对数据库各种模型的
研究以及理论上的探讨都还在蓬勃开展,其应用也从一般管理扩大到计算机辅助设计,人工
智能以及科技计算等领域。数据库实验有利于同学理解书中复杂抽象的理论,让同学建立直
观印象,加强实践操作技能,加深对理论的理解。
二、 概述本学期的实验内容和目的
本学期实验内容:1数据库的创建和管理 2 数据表的创建和管理 3 表中数据的操作 4
视图的创建和使用 5索引的创建和使用 6 存储过程的创建和使用 7 触发器的创建和使用
目的:掌握使用SQL Server 2005 开发数据库系统的方法
1 / 29
1
三、 总结
1. 我的实验完成的实际情况
数据库实验报告(一)
实验内容
:
1.在STUDENT数据库中创建一个名为t_course(课程信息)的表,要求如下:c_number
char(10) primary key, c_name char(30), hours int ,credit real;
2 / 29
1
2.在STUDENT数据库中创建一个名为t_score (学生成绩)的表要求如下:s_number char(10)
取值范围:数据来自学生信息表 主键,
C_number char(10)取值范围:数据来自课程信息 主键,
Score real 取值范围:0~100.
3 / 29
1
2. 在SQLServer2005 中有多少中约束?
答:在SQL Server 中有5 种约束:
主关键字约束(Primary Key Constraint)、外关键字约束(Foreign Key Constraint)、惟一性约
束(Unique Constraint)、检查约束(Check Constraint)和缺省约束(Default Constraint)。
4.给为t_course 表创建唯一性约束和检查约束、默认约束,如下:
5给为t_score 表创建唯一性约束和检查约束、默认约束,如下:
4 / 29
1
实验二 数据库的修改和和删除
实验环境及工具:
1. 软件环境:(操作系统及实验工具……)
WINDOWS 7 Microsoft SQL Server
2. 硬件环境:
处理器: Intel(R)core(TM)2 CPU *************
安装内存(RAM): 2.00GB
系统类型: 32位操作系统
实验内容
:
1. 在企业管理器中按照要求做如下操作:
(1)按照下面要求修改“Student”数据库,要求:
添加一个次要数据文件:逻辑文件名为Student_data2;实际文件名为;初始
容量为5MB,最大容量为20MB,递增量为1MB;
(2)更改数据库文件:
主要数据文件()容量为20MB,最大容量为50MB,递增量为2MB
事务日志文件()容量为2MB,最大容量为10MB,递增量为1MB
5 / 29
1
在查询分析器重完成1中的操作是,试图如下:
6 / 29
1
2.在查询分析器中完成数据库的删除,试图如下:
.3。在企业管理器中完成数据库的附加和分离,试图如下:
.4。完成数据的导入和导出。
实验3-创建索引、视图及与视图有关的操作
主要内容:
1:创建及删除索引
2:视图及与视图有关的基表操作
(1)-在Student学
生表上按学号升序
创建唯一索引
7 / 29
1
(2)验证索引已被
创建:
任务2:简单查询
(3)创建所有
女同学的视图
(4)--查询年
龄不大于20岁
的女生
(5)建计算机
系学生视图
(6)--查询计
算机系01号课
程考取最高分
的学生
8 / 29
1
(7)创建计算
机系选修数据
结构的学生成
绩视图
(8)查询数据
结构成绩高于
90分的学生记
录
(9)创建学生
年龄的视图
(10)查询年
龄在全体学生
平均年龄以上
的学生记录
(11)建立各
系每个学生平
均分的视图
(12)在在视
图
vwAVG_Grade
上建立新的视
图,显示学生
详细的信息
9 / 29
1
(13)查询各
系最高平均分
(14)--利用视
图更新基本表
索引的总结
有关索引的使用规则:
1、表的主键、外键必须有索引;
2、经常与其他表进行连接的表,在连接字段上应该建立索引;
3、经常出现在Where子句中的字段,特别是大表的字段,应该建立索引;
4、索引应该建在选择性高的字段上;
5、索引应该建在小字段上,对于大的文本字段甚至超长字段,不要建索引;
6、复合索引的建立需要进行仔细分析;尽量考虑用单字段索引代替:
A、正确选择复合索引中的主列字段,一般是选择性较好的字段;
B、复合索引的几个字段是否经常同时以AND方式出现在Where子句中?
单字段查询是否
极少甚至没有?如果是,则可以建立复合索引;否则考虑单字段索引;
C、如果复合索引中包含的字段经常单独出现在Where子句中,则分解为多
个单字段索引;
D、如果复合索引所包含的字段超过3个,那么仔细考虑其必要性,考虑
减少复合的字段;
E、如果既有单字段索引,又有这几个字段上的复合索引,一般可以删除
复合索引;
7、频繁进行数据操作的表,不要建立太多的索引;
8、删除无用的索引,避免对执行计划造成负面影响;
实验4-S、J、P及SPJ表验证
主要内容:
验证s表、j表、p表及spj表的有关操作
10 / 29
1
创建S表语
句:
创建P表语
句:
创建J表语
句:
创建SPJ表
语句:
1. 求供应
工程J1
零件的
供应商
号码SNO
2. 求供应工程J1
零件P1的供应
商号码SNO
11 / 29
1
3. 求供应工程J1
零件为红色的
供应商号码
SNO
4. 求没有使用天津供应
商生产红色零件的工
程号JNO
实验结果如上:
5. 求至少用了
供应商S1所
供应的全部
零件的工程
号JNO
实验五:
1-1 求供应工程J1零件的供应商号码SNO
1-2 求供应工程J1零件P1的供应商号码SNO
12 / 29
1
1-3 求供应工程J1零件为红色的供应商号码SNO
1-4 求没有使用天津供应商生产的红色零件的工程号JNO
1-5 求至少使用了供应商S1所供应的全部零件的工程号JNO
2-1 找出所有供应商的姓名和所在城市
2-2 找出所有零件的名称、颜色、重
13 / 29
1
2-3 找出使用供应商S1所供应零件的工程号码
2-4 找出工程项目J2使用的各种零件的名称及其重量
2-5 找出上海厂商供应的所有零件号码
2-6 找出使用上海产的零件的工程名称
2-7 找出没有使用天津产的零件的工程号码
1. 新建数据库角色
14 / 29
1
2. 添加角
色成员
3 . 创建数据库用户
15 / 29
1
4
设置身份验证模式
16 / 29
1
实验六:存储过程和触发器
实验环境
软件环境:
Windows 7 ,SQL Server
硬件环境:
Lenovo Thinkpad sl410k
1、存储过程
任务1:
创建不带参数的存储过程
方法1:利用对象管理器创建不带参数的存储过程
(2):依次打开【数据库】—【SC学习】—【可编程性】—【存储过程】,如下图所示:
17 / 29
1
(2):右键单击【存储过程】,如下图所示:
(3):点击【新建存储过程】后即出现下面所示的窗口:
18 / 29
1
(4):我们适当修改即可创建一个触发器,此处和下面用SQL代码创建的差不多,就不在赘
述了。
方法2:使用SQL-Transact创建不带参数的存储过程
--打开数据库SC学习
USE SC学习
GO
IF EXISTS(SELECT name FROM sysobjects Where name='PR_查看女生的信息' AND
TYPE='P')
Drop PROC PR_查看女生的信息
GO
--创建一个不带参数的存储过程
CREATE Proc PR_查看女生的信息
AS
BEGIN
SELECT * FROM Student
Where Ssex='女'
END
19 / 29
1
--打开数据库SC学习
USE SC学习
GO
--执行PR_查看女生的信息存储过程
EXEC PR_查看女生的信息
任务2:创建带参数的存储过程
方法1:利用对象资源管理器创建带参数的存储过程
方法和前面的一样,这里也不再说了……
方法2:使用SQL-Transact创建带参数的存储过程
--打开数据库SC学习
USE SC学习
GO
IF EXISTS(SELECT name FROM sysobjects Where name='PR_查看学生的信息' AND
TYPE='P')
Drop PROC PR_查看学生的信息
GO
--创建一个带参数的存储过程
CREATE Proc PR_查看学生的信息
@xb char(2)
AS
BEGIN
SELECT * FROM Student
Where Ssex=@xb
END
20 / 29
1
--打开数据库SC学习
USE SC学习
GO
--执行PR_查看学生的信息存储过程
EXEC PR_查看学生的信息 '女'
练习1:
针对Student表,创建一个存储过程
PR_查看学生的信息
,该存储过程有一个表示性别的参
数,通过传递显示相应性别学生的记录。
答案:见前面所示的参数的存储过程。
练习2:针对Student表,创建一个存储过程
PR_查看学生的信息_学号
,用来根据传入的学
生编号返回学生的出生日期。
方法1:利用对象资源管理器创建存储过程
(1):依次打开【数据库】—【SC学习】—【可编程性】—【存储过程】,如下图所示:
21 / 29
1
(2):右键单击【存储过程】,如下图所示:
(3):点击【新建存储过程】后即出现下面所示的窗口:
22 / 29
1
(4):我们适当修改即可创建一个触发器,此处和下面用SQL代码创建的差不多,就不在
赘述了。
方法2:使用SQL-Transact创建参数的存储过程
--打开数据库SC学习
USE SC学习
GO
IF EXISTS(SELECT name FROM sysobjects Where name='PR_查看学生的信息_学号
' AND TYPE='P')
Drop PROC PR_查看学生的信息_学号
GO
--创建一个带参数的存储过程
CREATE Proc PR_查看学生的信息_学号
@xh varchar(10)
AS
BEGIN
SELECT * FROM Student
Where Sno=@xh
END
--打开数据库SC学习
23 / 29
1
USE SC学习
GO
--执行PR_查看学生的信息存储过程
EXEC PR_查看学生的信息_学号 '200681015'
2、触发器
练习1:在数据库SC学习的表Student上建立一个名为
TR_禁止更新Student表
的UPDATE
触发器,该触发器将被UPDATE操作激活,该触发器不允许用户修改Student表中的数据。
--打开数据库SC学习
USE SC学习
GO
IF EXISTS(SELECT name FROM sysobjects Where name='TR_禁止更新Student表'
AND TYPE='P')
Drop PROC TR_禁止更新Student表
GO
--创建一个带参数的存储过程
CREATE TRIGGER TR_禁止更新Student表
ON Student
INSTEAD OF Update
AS
BEGIN
PRINT '触发器开始执行……'
PRINT '禁止修改Student表!'
END
--打开数据库SC学习
USE SC学习
GO
--验证触发器TR_禁止更新Student表
Update Student
SET Sname='张三'
WHERE Sno='200681015'
24 / 29
1
练习
2
:修改
stu_tril3
中的语句,使该触发器不允许用户修改
xm
一列的值,但其他列的值
可以允许被修改。
--打开数据库SC学习
USE SC学习
GO
--修改student_tri3中的语句,使该触发器不允许用户修改xm一列的值,但其他列的值可以
允许被修改。
IF EXISTS(Select name From sysobjects Where name='TR_不容许修改Sname' AND
TYPE='TR')
DROP Trigger TR_不容许修改Sname
GO
--创建[TR_不容许修改Sname]触发器
CREATE TRIGGER TR_不容许修改Sname
ON Student
FOR UPDATE
AS
GO
if(Update(Sname))
Begin
PRINT 'INSTEAD OF 触发器开始执行……'
PRINT 'Student表中的Sname列不容许更新……'
Rollback transaction
END
--打开数据库SC学习
USE SC学习
GO
--更新Student表
UPDATE Student
SET Sname='张三'
25 / 29
1
where Sno='200681013'
四、 附录
数据库的逻辑存储结构是指数据库是由哪些逻辑对象组成的,而数据库的物理存储结构指的
是保存数据库各种逻辑对象的物理文件是如何在磁盘上存储的。若要创建数据库,必须确定
数据库的名称、所有者、大小以及存储数据库的文件和文件组。创建数据库的方法主要有两
种:使用SQL Server 管理控制台创建数据库和使用Transact-SQL 语言创建数据库。对于用
户创建的数据库,当不再使用时,可以删除它以释放所占用的磁盘空间。在SQL Server 2005
中删除数据库有两种方式,即使用SQL Server管理控制台和使用DROP语句。修改数据库包
括数据库更名、利用SQL Server管理控制台修改数据库属性、缩小数据库三个方面。在使用
数据库的过程中,接触最多的就是数据库中的表,表是包含数据库中所有数据的数据库对象,
是数据库的主要对象,用来存储各种各样的信息。SQL Server 提供了两种方法创建数据库表:
使用SQL Server 管理控制台创建表和使用Transact-SQL语言创建表。通过约束可以定义SQL
Server 数据库引擎自动强制实施数据库完整性的方式。它通过限制字段的取值范围和数据
表之间的数据依然关系来保证数据的完整性。在SQL Server 中主要可以使用几种约束:非
空约束、主键约束、唯一性约束、默认约束、检查约束和外键约束。约束可以分为表级约束
和列级约束。表级约束的定义独立于列的定义,可以应用在一个表中的多列上。而列级约束
是行定义的一部分,只能够应用在一列上。当数据表的结构创建完成后,用户还可以根据实
际需要随时更改表结构。用户可以增加删除和修改字段,更改数据表名称等。在SQL Server
中可以利用SQL Server管理控制台和Transaction-SQL语言中的ALTER TABLE 语句这两种方法
来增加、删除和修改字段。使用数据库的最终目的是为了利用数据库中的数据,而SELECT
语句的功能就是从数据库中检索出符合用户需求的数据,任何从数据库取得数据的操作最终
都将体现为SELECT 语句。我们主要讲了SELECT 子句、INTO子句、FROM子句、WHERE子
句、GROUP BY子句、ORDER BY
子句。INSERT语句用于向数据库表或者视图中加入一行数据。UPDATE语句用于修改数据库
表中特定记录或者字段的数据。DELETE 语句用于删除数据库表中的数据。Transact-SQL语言
是SQL语言的一种实现形式,它包含了标准的SQL语言部分。在Transact-SQL语言中使用标
准SQL语言编写的应用程序和脚本,可以移植到其他的数据库管理系统中执行。但由于标
准SQL语言形式简单,不能满足实际应用中的编程需要,因此,Transact-SQL语言另外增加
了一些语言要素,这些附加的语言要素不是标准SQL中的内容。他们包括注释、变量、运
算符、函数和流程控制语句等。
几种约束的作用总结:
主关键字约束指定表的一列或几列的组合的值在表中具有惟一性,即能惟一地指定一行
记录。每个表中只能有一列被指定为主关键字,且IMAGE 和TEXT 类型的列不能被指
26 / 29
1
定为主关键字,也不允许指定主关键字列有NULL 属性。
定义主关键字约束的语法如下:
CONSTRAINT constraint_name
PRIMARY KEY [CLUSTERED | NONCLUSTERED]
(column_name1[, column_name2,…,column_name16])
外关键字约束定义了表之间的关系。当一个表中的一个列或多个列的组合和其它表中的
主关键字定义相同时,就可以将这些列或列的组合定义为外关键字,并设定它适合哪个
表中哪些列相关联。
定义外关键字约束的语法如下:
CONSTRAINT constraint_name
FOREIGN KEY (column_name1[, column_name2,…,column_name16])
REFERENCES ref_table [ (ref_column1[,ref_column2,…, ref_column16] )]
[ ON DELETE { CASCADE | NO ACTION } ]
[ ON UPDATE { CASCADE | NO ACTION } ] ]
[ NOT FOR REPLICATION ]
惟一性约束指定一个或多个列的组合的值具有惟一性,以防止在列中输入重复的值。惟
一性约束指定的列可以有NULL 属性。由于主关键字值是具有惟一性的,因此主关键字
列不能再设定惟一性约束。
定义惟一性约束的语法如下:
CONSTRAINT constraint_name
UNIQUE [CLUSTERED | NONCLUSTERED]
(column_name1[, column_name2,…,column_name16])
缺省约束通过定义列的缺省值或使用数据库的缺省值对象绑定表的列,来指定列的缺省
值。SQL Server 推荐使用缺省约束,而不使用定义缺省值的方式来指定列的缺省值。
有关绑定缺省约束的方法请参见“数据完整性”章节。
定义缺省约束的语法如下:
CONSTRAINT constraint_name
DEFAULT constant_expression [FOR column_name]
对于数据库来说,约束又分为列约束(Column Constraint)和表约束(Table
Constraint)。
列约束作为列定义的一部分只作用于此列本身。表约束作为表定义的一部分,可以作用
于
多个列。
视图是一种数据库对象,是从一个或者多个数据表或视图中导出的虚表,视图所对应的数据
并不真正的存储在视图中,而是存储在所引用的数据表中,视图的结构和数据是对数据表进
行查询的结果。视图被定以后便存储在数据库中,和真实的表一样,视图在显示时也包括几
个被定义的数据列和多个数据行,但通过视图看到的数据其实是存放在基表中的数据。对视
图中数据的操作与对表的操作一样。可以对其进行查询、修改和删除,但对数据的操作要满
足一定的条件。当对通过视图看到的数据进行修改时,其实修改的是相应基表中的数据,同
时,若基表的数据发生变化,这种变化也会自动地反映到视图中。根据创建视图时给定的条
件,视图可以是一个数据表的一部分,也可以是多个基表的联合,它存储了要执行检索的查
询语句的定义,一边在引用该视图时使用。在视图中最多可以定义一个或者多个基表的1024
个字段,所能定义的记录数只受表中被引用的记录数的限制。在SQL Server 中创建视图主
要有两种方法:使用SQL Server 管理控制台和使用Transact-SQL语句中的CREATE VIEW命令。
27 / 29
1
如果已定义的视图不能满足用户要求时,可以使用SQL Server 管理控制台或Transact-SQL语
句修改视图的定义,也可以对现有的视图重新命名。在数据库中,如果想在某个表中快速查
找满足条件的记录,可以创建索引。索引使数据库程序无须对整个表进行扫描,就可以在其
中找到所需数据。索引与表或视图关联,创建索引可以加快从表或视图中检索数据的速度。
索引包含由表或视图中的一列或多列生成的键。这些键存储在一个结构中,使SQL Server 可
以快速有效地查找与键值相关联的行。提供的索引类型主要有以下几类:聚集索引、非聚集
索引、唯一索引、包含性列索引、索引视图、全文索引以及XML索引。在SQL Server 中,
索引可以由系统自动创建,也可以由用户手工创建。在管理控制台中展开指定的服务器和数
据库,可以查看、修改和删除索引。在使用Transact-SQL语言编程的过程中,可以将某些需
要多次调用的实现某个特定任务的代码段编写成一个过程,将其保存在数据库中,并由SQL
Server服务器通过过程名来调用它们,这些过程就叫做存储过程。存储过程在创建时就被编
译和优化,调用一次以后,相关信息就保存在内存中看,下次调用时可以直接执行。在SQL
Server 中可以使用一下两种方法创建存储过程:第一是使用SQL Server 管理控制台创建存
储过程。第二是使用Transact-SQL语句中的CREATE PROCEDURE命令创建存储过程。默认情
况下,创建存储过程的许可权归数据库的所有者,数据库的所有者可以把许可授权给其他用
户。存储过程创建成功后,保存在数据库中,在SQL Server 中可以使用EXECUTE 命名来直
接执行存储过程。触发器是一种特殊类型的存储过程,一般的存储过程通过存储过程名称被
直接调用,而触发器主要是通过当某个事件发生时自动被触发执行的。触发器可以用于SQL
Server 约束、默认值和规则的完整性检查,还可以完成难以用普通约束实现的复杂功能。
当创建数据库对象或在数据表中插入记录、修改记录或者删除记录时,SQL Server 就会自动
执行触发器所定义的SQL语句,从而确保对数据的处理必须符合由这些SQL语句说定义的
规则。触发器和引起触发器执行的SQL语句被当做一次事务处理,如果这次事务未获得成
功,SQL Server会自动返回该事务执行前的状态。和CHECK约束相比较,触发器可以强制实
现更加复杂的数据完整性,而且可以引用其他表中的字段。作为一个网络数据库系统,其数
据安全的重要性不言而喻。数据库的安全性通过以下几个方面得以保证,第一是网络系统的
安全性,第二是服务器的安全性,第三是SQL Server2005登陆安全性,第四是数据库的安全
性,第五是数据库对象的安全性。备份是数据库系统管理的一项重要内容,也是系统管理员
的日常工作。数据库备份记录了在进行备份这一操作时数据库中所有数据的状态,一边在数
据库找到破坏时能够及时地将其还原。执行备份操作必须拥有对数据库备份的权限许可,
SQL Server 只允许系统管理员、数据库所有者和数据库备份执行者备份数据库。数据备份的
范围可以是完整的数据库、部分数据库或者一组文件或文件组。SQL Server 均支持完整和差
异两种备份方式。在进行备份以前首先必须创建或指定备份设备。使用SQL Server管理控制
台或者Transact-SQL语句备份数据库。数据库还原时指将数据库备份重新加载到系统中的过
程。数据库备份后,一旦系统发生崩溃或者执行了错误的数据库操作,就可以从备份文件中
还原数据库。通过以上几个实验,我加深了对数据库操作理论的理解,掌握了开发数据库系
统的基本方法。让我在以后的学习中更快更好的掌握知识。 SQL Server 2000 的特性包
括:
et 集成:SQL Server 2000 数据库引擎提供完整的XML 支持。它还具
有构成最大的Web 站点的数据存储组件所需的可伸缩性、可用性和安全功能。SQL
Server 2000 程序设计模型与 Windows DNA 构架集成,用以开发 Web 应用程序,
并且SQL Server 2000 支持 English Query 和 Microsoft 搜索服务等功能,在Web 应
用程序中包含了用户友好的查询和强大的搜索功能。
2.可伸缩性和可用性:同一个数据库引擎可以在不同的平台上使用,从运行
Microsoft Windows® 98 的便携式电脑,到运行 Microsoft Windows 2000 数据
28 / 29
1
中心版的大型多处理器服务器。SQL Server 2000 企业版支持联合服务器、索引视图
和大型内存支持等功能,使其得以升级到最大 Web 站点所需的性能级别。
3.企业级数据库功能:SQL Server 2000 关系数据库引擎支持当今苛刻的数据处
理环境所需的功能。数据库引擎充分保护数据完整性,同时将管理上千个并发修改数
据库的用户的开销减到最小。SQL Server 2000 分布式查询使您得以引用来自不同数
据源的数据,就好象这些数据是 SQL Server 2000 数据库的一部分,同时分布式事
务支持充分保护任何分布式数据更新的完整性。复制同样使您得以维护多个数据复
本,同时确保单独的数据复本保持同步。可将一组数据复制到多个移动的脱接用户,
使这些用户自主地工作,然后将他们所做的修改合并回发布服务器。
4.易于安装、部署和使用: SQL Server 2000 中包括一系列管理和开发工具,
这些工具可改进在多个站点上安装、部署、管理和使用 SQL Server 的过程。SQL
Server 2000 还支持基于标准的、与 Windows DNA 集成的程序设计模型,使 SQL
Server 数据库和数据仓库的使用成为生成强大的可伸缩系统的无缝部分。这些功能
使您得以快速交付 SQL Server 应用程序,使客户只需最少的安装和管理开销即可实
现这些应用程序。
SQL Server 2000 中包括析取和分析汇总数据以进行联机分析处理 (OLAP) 的工
具。SQL Server 中还包括一些工具,可用来直观地设计数据库并通过 English Query
来分析数据。
数据库的内容是从数据表的创建和修改开始的,数据表的建立关系数据库的基
本结构,它用来存储数据具有已定义的属性,在数据表的操作中有:查看表的信息、
查看表的属性、修改表当中的数据、删除表当中的数据以及修改、删除表的操作,从
课程的学习和实验当中我了解到,表是数据库数据当中最重要的一个数据对象,表建
立的好坏直接关系到数据库的实际使用效果,表当中的内容越具体对表越有利,同时
对数据库的各种应用也有着各种各样的便利,但是表的内容也不能过于的繁琐,当然,
这些也只能在今后的实际使用当中多多的应用,才能加深和理解如何对表进行规划才
更有利于使用和查询。在数据库中,数据内容的查询可以使用查询语句的方法查询,
也可以使用视图操作的方法进行查询,使用视图操作的方法不仅可以简化数据操作,
同时还可以检索数据,在查询时还能向基表当中添加、修改和删除数据,能有效的提
高数据库可用性和安全性。
29 / 29
2024年4月22日发(作者:齐高岑)
1
数据库原理实验学期总结
班级
摘要
学习数据库已经有一个学期的时间,经过一个学期的SQL Server 2000课程的学习,
老师在课堂上耐心、细致的讲解,以及内容详细、层次鲜明、易于记忆和理解的教学
课件,让我了解了SQL Server 2000的基础知识,学会了创建数据库以及对数据库操
作的一些基本应用,现就所学到知识作出以下的学习心得总结:
SQL Server 是一个关系数据库管理系统,SQL Server 2000 是Microsoft 公司推出的
SQL Server 数据库管理系统的一个版本,具有使用方便,可伸缩性好与相关软件集成程度高
等优点,可跨越从运行Microsoft Windows 98 的膝上型电脑到运行Microsoft WindowsXP
的大型多处理器的服务器等多种平台使用。
一、
数据库实验的主要意义的目的
数据库是数据管理的最新技术,是计算机科学的重要分支。目前,对数据库各种模型的
研究以及理论上的探讨都还在蓬勃开展,其应用也从一般管理扩大到计算机辅助设计,人工
智能以及科技计算等领域。数据库实验有利于同学理解书中复杂抽象的理论,让同学建立直
观印象,加强实践操作技能,加深对理论的理解。
二、 概述本学期的实验内容和目的
本学期实验内容:1数据库的创建和管理 2 数据表的创建和管理 3 表中数据的操作 4
视图的创建和使用 5索引的创建和使用 6 存储过程的创建和使用 7 触发器的创建和使用
目的:掌握使用SQL Server 2005 开发数据库系统的方法
1 / 29
1
三、 总结
1. 我的实验完成的实际情况
数据库实验报告(一)
实验内容
:
1.在STUDENT数据库中创建一个名为t_course(课程信息)的表,要求如下:c_number
char(10) primary key, c_name char(30), hours int ,credit real;
2 / 29
1
2.在STUDENT数据库中创建一个名为t_score (学生成绩)的表要求如下:s_number char(10)
取值范围:数据来自学生信息表 主键,
C_number char(10)取值范围:数据来自课程信息 主键,
Score real 取值范围:0~100.
3 / 29
1
2. 在SQLServer2005 中有多少中约束?
答:在SQL Server 中有5 种约束:
主关键字约束(Primary Key Constraint)、外关键字约束(Foreign Key Constraint)、惟一性约
束(Unique Constraint)、检查约束(Check Constraint)和缺省约束(Default Constraint)。
4.给为t_course 表创建唯一性约束和检查约束、默认约束,如下:
5给为t_score 表创建唯一性约束和检查约束、默认约束,如下:
4 / 29
1
实验二 数据库的修改和和删除
实验环境及工具:
1. 软件环境:(操作系统及实验工具……)
WINDOWS 7 Microsoft SQL Server
2. 硬件环境:
处理器: Intel(R)core(TM)2 CPU *************
安装内存(RAM): 2.00GB
系统类型: 32位操作系统
实验内容
:
1. 在企业管理器中按照要求做如下操作:
(1)按照下面要求修改“Student”数据库,要求:
添加一个次要数据文件:逻辑文件名为Student_data2;实际文件名为;初始
容量为5MB,最大容量为20MB,递增量为1MB;
(2)更改数据库文件:
主要数据文件()容量为20MB,最大容量为50MB,递增量为2MB
事务日志文件()容量为2MB,最大容量为10MB,递增量为1MB
5 / 29
1
在查询分析器重完成1中的操作是,试图如下:
6 / 29
1
2.在查询分析器中完成数据库的删除,试图如下:
.3。在企业管理器中完成数据库的附加和分离,试图如下:
.4。完成数据的导入和导出。
实验3-创建索引、视图及与视图有关的操作
主要内容:
1:创建及删除索引
2:视图及与视图有关的基表操作
(1)-在Student学
生表上按学号升序
创建唯一索引
7 / 29
1
(2)验证索引已被
创建:
任务2:简单查询
(3)创建所有
女同学的视图
(4)--查询年
龄不大于20岁
的女生
(5)建计算机
系学生视图
(6)--查询计
算机系01号课
程考取最高分
的学生
8 / 29
1
(7)创建计算
机系选修数据
结构的学生成
绩视图
(8)查询数据
结构成绩高于
90分的学生记
录
(9)创建学生
年龄的视图
(10)查询年
龄在全体学生
平均年龄以上
的学生记录
(11)建立各
系每个学生平
均分的视图
(12)在在视
图
vwAVG_Grade
上建立新的视
图,显示学生
详细的信息
9 / 29
1
(13)查询各
系最高平均分
(14)--利用视
图更新基本表
索引的总结
有关索引的使用规则:
1、表的主键、外键必须有索引;
2、经常与其他表进行连接的表,在连接字段上应该建立索引;
3、经常出现在Where子句中的字段,特别是大表的字段,应该建立索引;
4、索引应该建在选择性高的字段上;
5、索引应该建在小字段上,对于大的文本字段甚至超长字段,不要建索引;
6、复合索引的建立需要进行仔细分析;尽量考虑用单字段索引代替:
A、正确选择复合索引中的主列字段,一般是选择性较好的字段;
B、复合索引的几个字段是否经常同时以AND方式出现在Where子句中?
单字段查询是否
极少甚至没有?如果是,则可以建立复合索引;否则考虑单字段索引;
C、如果复合索引中包含的字段经常单独出现在Where子句中,则分解为多
个单字段索引;
D、如果复合索引所包含的字段超过3个,那么仔细考虑其必要性,考虑
减少复合的字段;
E、如果既有单字段索引,又有这几个字段上的复合索引,一般可以删除
复合索引;
7、频繁进行数据操作的表,不要建立太多的索引;
8、删除无用的索引,避免对执行计划造成负面影响;
实验4-S、J、P及SPJ表验证
主要内容:
验证s表、j表、p表及spj表的有关操作
10 / 29
1
创建S表语
句:
创建P表语
句:
创建J表语
句:
创建SPJ表
语句:
1. 求供应
工程J1
零件的
供应商
号码SNO
2. 求供应工程J1
零件P1的供应
商号码SNO
11 / 29
1
3. 求供应工程J1
零件为红色的
供应商号码
SNO
4. 求没有使用天津供应
商生产红色零件的工
程号JNO
实验结果如上:
5. 求至少用了
供应商S1所
供应的全部
零件的工程
号JNO
实验五:
1-1 求供应工程J1零件的供应商号码SNO
1-2 求供应工程J1零件P1的供应商号码SNO
12 / 29
1
1-3 求供应工程J1零件为红色的供应商号码SNO
1-4 求没有使用天津供应商生产的红色零件的工程号JNO
1-5 求至少使用了供应商S1所供应的全部零件的工程号JNO
2-1 找出所有供应商的姓名和所在城市
2-2 找出所有零件的名称、颜色、重
13 / 29
1
2-3 找出使用供应商S1所供应零件的工程号码
2-4 找出工程项目J2使用的各种零件的名称及其重量
2-5 找出上海厂商供应的所有零件号码
2-6 找出使用上海产的零件的工程名称
2-7 找出没有使用天津产的零件的工程号码
1. 新建数据库角色
14 / 29
1
2. 添加角
色成员
3 . 创建数据库用户
15 / 29
1
4
设置身份验证模式
16 / 29
1
实验六:存储过程和触发器
实验环境
软件环境:
Windows 7 ,SQL Server
硬件环境:
Lenovo Thinkpad sl410k
1、存储过程
任务1:
创建不带参数的存储过程
方法1:利用对象管理器创建不带参数的存储过程
(2):依次打开【数据库】—【SC学习】—【可编程性】—【存储过程】,如下图所示:
17 / 29
1
(2):右键单击【存储过程】,如下图所示:
(3):点击【新建存储过程】后即出现下面所示的窗口:
18 / 29
1
(4):我们适当修改即可创建一个触发器,此处和下面用SQL代码创建的差不多,就不在赘
述了。
方法2:使用SQL-Transact创建不带参数的存储过程
--打开数据库SC学习
USE SC学习
GO
IF EXISTS(SELECT name FROM sysobjects Where name='PR_查看女生的信息' AND
TYPE='P')
Drop PROC PR_查看女生的信息
GO
--创建一个不带参数的存储过程
CREATE Proc PR_查看女生的信息
AS
BEGIN
SELECT * FROM Student
Where Ssex='女'
END
19 / 29
1
--打开数据库SC学习
USE SC学习
GO
--执行PR_查看女生的信息存储过程
EXEC PR_查看女生的信息
任务2:创建带参数的存储过程
方法1:利用对象资源管理器创建带参数的存储过程
方法和前面的一样,这里也不再说了……
方法2:使用SQL-Transact创建带参数的存储过程
--打开数据库SC学习
USE SC学习
GO
IF EXISTS(SELECT name FROM sysobjects Where name='PR_查看学生的信息' AND
TYPE='P')
Drop PROC PR_查看学生的信息
GO
--创建一个带参数的存储过程
CREATE Proc PR_查看学生的信息
@xb char(2)
AS
BEGIN
SELECT * FROM Student
Where Ssex=@xb
END
20 / 29
1
--打开数据库SC学习
USE SC学习
GO
--执行PR_查看学生的信息存储过程
EXEC PR_查看学生的信息 '女'
练习1:
针对Student表,创建一个存储过程
PR_查看学生的信息
,该存储过程有一个表示性别的参
数,通过传递显示相应性别学生的记录。
答案:见前面所示的参数的存储过程。
练习2:针对Student表,创建一个存储过程
PR_查看学生的信息_学号
,用来根据传入的学
生编号返回学生的出生日期。
方法1:利用对象资源管理器创建存储过程
(1):依次打开【数据库】—【SC学习】—【可编程性】—【存储过程】,如下图所示:
21 / 29
1
(2):右键单击【存储过程】,如下图所示:
(3):点击【新建存储过程】后即出现下面所示的窗口:
22 / 29
1
(4):我们适当修改即可创建一个触发器,此处和下面用SQL代码创建的差不多,就不在
赘述了。
方法2:使用SQL-Transact创建参数的存储过程
--打开数据库SC学习
USE SC学习
GO
IF EXISTS(SELECT name FROM sysobjects Where name='PR_查看学生的信息_学号
' AND TYPE='P')
Drop PROC PR_查看学生的信息_学号
GO
--创建一个带参数的存储过程
CREATE Proc PR_查看学生的信息_学号
@xh varchar(10)
AS
BEGIN
SELECT * FROM Student
Where Sno=@xh
END
--打开数据库SC学习
23 / 29
1
USE SC学习
GO
--执行PR_查看学生的信息存储过程
EXEC PR_查看学生的信息_学号 '200681015'
2、触发器
练习1:在数据库SC学习的表Student上建立一个名为
TR_禁止更新Student表
的UPDATE
触发器,该触发器将被UPDATE操作激活,该触发器不允许用户修改Student表中的数据。
--打开数据库SC学习
USE SC学习
GO
IF EXISTS(SELECT name FROM sysobjects Where name='TR_禁止更新Student表'
AND TYPE='P')
Drop PROC TR_禁止更新Student表
GO
--创建一个带参数的存储过程
CREATE TRIGGER TR_禁止更新Student表
ON Student
INSTEAD OF Update
AS
BEGIN
PRINT '触发器开始执行……'
PRINT '禁止修改Student表!'
END
--打开数据库SC学习
USE SC学习
GO
--验证触发器TR_禁止更新Student表
Update Student
SET Sname='张三'
WHERE Sno='200681015'
24 / 29
1
练习
2
:修改
stu_tril3
中的语句,使该触发器不允许用户修改
xm
一列的值,但其他列的值
可以允许被修改。
--打开数据库SC学习
USE SC学习
GO
--修改student_tri3中的语句,使该触发器不允许用户修改xm一列的值,但其他列的值可以
允许被修改。
IF EXISTS(Select name From sysobjects Where name='TR_不容许修改Sname' AND
TYPE='TR')
DROP Trigger TR_不容许修改Sname
GO
--创建[TR_不容许修改Sname]触发器
CREATE TRIGGER TR_不容许修改Sname
ON Student
FOR UPDATE
AS
GO
if(Update(Sname))
Begin
PRINT 'INSTEAD OF 触发器开始执行……'
PRINT 'Student表中的Sname列不容许更新……'
Rollback transaction
END
--打开数据库SC学习
USE SC学习
GO
--更新Student表
UPDATE Student
SET Sname='张三'
25 / 29
1
where Sno='200681013'
四、 附录
数据库的逻辑存储结构是指数据库是由哪些逻辑对象组成的,而数据库的物理存储结构指的
是保存数据库各种逻辑对象的物理文件是如何在磁盘上存储的。若要创建数据库,必须确定
数据库的名称、所有者、大小以及存储数据库的文件和文件组。创建数据库的方法主要有两
种:使用SQL Server 管理控制台创建数据库和使用Transact-SQL 语言创建数据库。对于用
户创建的数据库,当不再使用时,可以删除它以释放所占用的磁盘空间。在SQL Server 2005
中删除数据库有两种方式,即使用SQL Server管理控制台和使用DROP语句。修改数据库包
括数据库更名、利用SQL Server管理控制台修改数据库属性、缩小数据库三个方面。在使用
数据库的过程中,接触最多的就是数据库中的表,表是包含数据库中所有数据的数据库对象,
是数据库的主要对象,用来存储各种各样的信息。SQL Server 提供了两种方法创建数据库表:
使用SQL Server 管理控制台创建表和使用Transact-SQL语言创建表。通过约束可以定义SQL
Server 数据库引擎自动强制实施数据库完整性的方式。它通过限制字段的取值范围和数据
表之间的数据依然关系来保证数据的完整性。在SQL Server 中主要可以使用几种约束:非
空约束、主键约束、唯一性约束、默认约束、检查约束和外键约束。约束可以分为表级约束
和列级约束。表级约束的定义独立于列的定义,可以应用在一个表中的多列上。而列级约束
是行定义的一部分,只能够应用在一列上。当数据表的结构创建完成后,用户还可以根据实
际需要随时更改表结构。用户可以增加删除和修改字段,更改数据表名称等。在SQL Server
中可以利用SQL Server管理控制台和Transaction-SQL语言中的ALTER TABLE 语句这两种方法
来增加、删除和修改字段。使用数据库的最终目的是为了利用数据库中的数据,而SELECT
语句的功能就是从数据库中检索出符合用户需求的数据,任何从数据库取得数据的操作最终
都将体现为SELECT 语句。我们主要讲了SELECT 子句、INTO子句、FROM子句、WHERE子
句、GROUP BY子句、ORDER BY
子句。INSERT语句用于向数据库表或者视图中加入一行数据。UPDATE语句用于修改数据库
表中特定记录或者字段的数据。DELETE 语句用于删除数据库表中的数据。Transact-SQL语言
是SQL语言的一种实现形式,它包含了标准的SQL语言部分。在Transact-SQL语言中使用标
准SQL语言编写的应用程序和脚本,可以移植到其他的数据库管理系统中执行。但由于标
准SQL语言形式简单,不能满足实际应用中的编程需要,因此,Transact-SQL语言另外增加
了一些语言要素,这些附加的语言要素不是标准SQL中的内容。他们包括注释、变量、运
算符、函数和流程控制语句等。
几种约束的作用总结:
主关键字约束指定表的一列或几列的组合的值在表中具有惟一性,即能惟一地指定一行
记录。每个表中只能有一列被指定为主关键字,且IMAGE 和TEXT 类型的列不能被指
26 / 29
1
定为主关键字,也不允许指定主关键字列有NULL 属性。
定义主关键字约束的语法如下:
CONSTRAINT constraint_name
PRIMARY KEY [CLUSTERED | NONCLUSTERED]
(column_name1[, column_name2,…,column_name16])
外关键字约束定义了表之间的关系。当一个表中的一个列或多个列的组合和其它表中的
主关键字定义相同时,就可以将这些列或列的组合定义为外关键字,并设定它适合哪个
表中哪些列相关联。
定义外关键字约束的语法如下:
CONSTRAINT constraint_name
FOREIGN KEY (column_name1[, column_name2,…,column_name16])
REFERENCES ref_table [ (ref_column1[,ref_column2,…, ref_column16] )]
[ ON DELETE { CASCADE | NO ACTION } ]
[ ON UPDATE { CASCADE | NO ACTION } ] ]
[ NOT FOR REPLICATION ]
惟一性约束指定一个或多个列的组合的值具有惟一性,以防止在列中输入重复的值。惟
一性约束指定的列可以有NULL 属性。由于主关键字值是具有惟一性的,因此主关键字
列不能再设定惟一性约束。
定义惟一性约束的语法如下:
CONSTRAINT constraint_name
UNIQUE [CLUSTERED | NONCLUSTERED]
(column_name1[, column_name2,…,column_name16])
缺省约束通过定义列的缺省值或使用数据库的缺省值对象绑定表的列,来指定列的缺省
值。SQL Server 推荐使用缺省约束,而不使用定义缺省值的方式来指定列的缺省值。
有关绑定缺省约束的方法请参见“数据完整性”章节。
定义缺省约束的语法如下:
CONSTRAINT constraint_name
DEFAULT constant_expression [FOR column_name]
对于数据库来说,约束又分为列约束(Column Constraint)和表约束(Table
Constraint)。
列约束作为列定义的一部分只作用于此列本身。表约束作为表定义的一部分,可以作用
于
多个列。
视图是一种数据库对象,是从一个或者多个数据表或视图中导出的虚表,视图所对应的数据
并不真正的存储在视图中,而是存储在所引用的数据表中,视图的结构和数据是对数据表进
行查询的结果。视图被定以后便存储在数据库中,和真实的表一样,视图在显示时也包括几
个被定义的数据列和多个数据行,但通过视图看到的数据其实是存放在基表中的数据。对视
图中数据的操作与对表的操作一样。可以对其进行查询、修改和删除,但对数据的操作要满
足一定的条件。当对通过视图看到的数据进行修改时,其实修改的是相应基表中的数据,同
时,若基表的数据发生变化,这种变化也会自动地反映到视图中。根据创建视图时给定的条
件,视图可以是一个数据表的一部分,也可以是多个基表的联合,它存储了要执行检索的查
询语句的定义,一边在引用该视图时使用。在视图中最多可以定义一个或者多个基表的1024
个字段,所能定义的记录数只受表中被引用的记录数的限制。在SQL Server 中创建视图主
要有两种方法:使用SQL Server 管理控制台和使用Transact-SQL语句中的CREATE VIEW命令。
27 / 29
1
如果已定义的视图不能满足用户要求时,可以使用SQL Server 管理控制台或Transact-SQL语
句修改视图的定义,也可以对现有的视图重新命名。在数据库中,如果想在某个表中快速查
找满足条件的记录,可以创建索引。索引使数据库程序无须对整个表进行扫描,就可以在其
中找到所需数据。索引与表或视图关联,创建索引可以加快从表或视图中检索数据的速度。
索引包含由表或视图中的一列或多列生成的键。这些键存储在一个结构中,使SQL Server 可
以快速有效地查找与键值相关联的行。提供的索引类型主要有以下几类:聚集索引、非聚集
索引、唯一索引、包含性列索引、索引视图、全文索引以及XML索引。在SQL Server 中,
索引可以由系统自动创建,也可以由用户手工创建。在管理控制台中展开指定的服务器和数
据库,可以查看、修改和删除索引。在使用Transact-SQL语言编程的过程中,可以将某些需
要多次调用的实现某个特定任务的代码段编写成一个过程,将其保存在数据库中,并由SQL
Server服务器通过过程名来调用它们,这些过程就叫做存储过程。存储过程在创建时就被编
译和优化,调用一次以后,相关信息就保存在内存中看,下次调用时可以直接执行。在SQL
Server 中可以使用一下两种方法创建存储过程:第一是使用SQL Server 管理控制台创建存
储过程。第二是使用Transact-SQL语句中的CREATE PROCEDURE命令创建存储过程。默认情
况下,创建存储过程的许可权归数据库的所有者,数据库的所有者可以把许可授权给其他用
户。存储过程创建成功后,保存在数据库中,在SQL Server 中可以使用EXECUTE 命名来直
接执行存储过程。触发器是一种特殊类型的存储过程,一般的存储过程通过存储过程名称被
直接调用,而触发器主要是通过当某个事件发生时自动被触发执行的。触发器可以用于SQL
Server 约束、默认值和规则的完整性检查,还可以完成难以用普通约束实现的复杂功能。
当创建数据库对象或在数据表中插入记录、修改记录或者删除记录时,SQL Server 就会自动
执行触发器所定义的SQL语句,从而确保对数据的处理必须符合由这些SQL语句说定义的
规则。触发器和引起触发器执行的SQL语句被当做一次事务处理,如果这次事务未获得成
功,SQL Server会自动返回该事务执行前的状态。和CHECK约束相比较,触发器可以强制实
现更加复杂的数据完整性,而且可以引用其他表中的字段。作为一个网络数据库系统,其数
据安全的重要性不言而喻。数据库的安全性通过以下几个方面得以保证,第一是网络系统的
安全性,第二是服务器的安全性,第三是SQL Server2005登陆安全性,第四是数据库的安全
性,第五是数据库对象的安全性。备份是数据库系统管理的一项重要内容,也是系统管理员
的日常工作。数据库备份记录了在进行备份这一操作时数据库中所有数据的状态,一边在数
据库找到破坏时能够及时地将其还原。执行备份操作必须拥有对数据库备份的权限许可,
SQL Server 只允许系统管理员、数据库所有者和数据库备份执行者备份数据库。数据备份的
范围可以是完整的数据库、部分数据库或者一组文件或文件组。SQL Server 均支持完整和差
异两种备份方式。在进行备份以前首先必须创建或指定备份设备。使用SQL Server管理控制
台或者Transact-SQL语句备份数据库。数据库还原时指将数据库备份重新加载到系统中的过
程。数据库备份后,一旦系统发生崩溃或者执行了错误的数据库操作,就可以从备份文件中
还原数据库。通过以上几个实验,我加深了对数据库操作理论的理解,掌握了开发数据库系
统的基本方法。让我在以后的学习中更快更好的掌握知识。 SQL Server 2000 的特性包
括:
et 集成:SQL Server 2000 数据库引擎提供完整的XML 支持。它还具
有构成最大的Web 站点的数据存储组件所需的可伸缩性、可用性和安全功能。SQL
Server 2000 程序设计模型与 Windows DNA 构架集成,用以开发 Web 应用程序,
并且SQL Server 2000 支持 English Query 和 Microsoft 搜索服务等功能,在Web 应
用程序中包含了用户友好的查询和强大的搜索功能。
2.可伸缩性和可用性:同一个数据库引擎可以在不同的平台上使用,从运行
Microsoft Windows® 98 的便携式电脑,到运行 Microsoft Windows 2000 数据
28 / 29
1
中心版的大型多处理器服务器。SQL Server 2000 企业版支持联合服务器、索引视图
和大型内存支持等功能,使其得以升级到最大 Web 站点所需的性能级别。
3.企业级数据库功能:SQL Server 2000 关系数据库引擎支持当今苛刻的数据处
理环境所需的功能。数据库引擎充分保护数据完整性,同时将管理上千个并发修改数
据库的用户的开销减到最小。SQL Server 2000 分布式查询使您得以引用来自不同数
据源的数据,就好象这些数据是 SQL Server 2000 数据库的一部分,同时分布式事
务支持充分保护任何分布式数据更新的完整性。复制同样使您得以维护多个数据复
本,同时确保单独的数据复本保持同步。可将一组数据复制到多个移动的脱接用户,
使这些用户自主地工作,然后将他们所做的修改合并回发布服务器。
4.易于安装、部署和使用: SQL Server 2000 中包括一系列管理和开发工具,
这些工具可改进在多个站点上安装、部署、管理和使用 SQL Server 的过程。SQL
Server 2000 还支持基于标准的、与 Windows DNA 集成的程序设计模型,使 SQL
Server 数据库和数据仓库的使用成为生成强大的可伸缩系统的无缝部分。这些功能
使您得以快速交付 SQL Server 应用程序,使客户只需最少的安装和管理开销即可实
现这些应用程序。
SQL Server 2000 中包括析取和分析汇总数据以进行联机分析处理 (OLAP) 的工
具。SQL Server 中还包括一些工具,可用来直观地设计数据库并通过 English Query
来分析数据。
数据库的内容是从数据表的创建和修改开始的,数据表的建立关系数据库的基
本结构,它用来存储数据具有已定义的属性,在数据表的操作中有:查看表的信息、
查看表的属性、修改表当中的数据、删除表当中的数据以及修改、删除表的操作,从
课程的学习和实验当中我了解到,表是数据库数据当中最重要的一个数据对象,表建
立的好坏直接关系到数据库的实际使用效果,表当中的内容越具体对表越有利,同时
对数据库的各种应用也有着各种各样的便利,但是表的内容也不能过于的繁琐,当然,
这些也只能在今后的实际使用当中多多的应用,才能加深和理解如何对表进行规划才
更有利于使用和查询。在数据库中,数据内容的查询可以使用查询语句的方法查询,
也可以使用视图操作的方法进行查询,使用视图操作的方法不仅可以简化数据操作,
同时还可以检索数据,在查询时还能向基表当中添加、修改和删除数据,能有效的提
高数据库可用性和安全性。
29 / 29