数据库课件 9
合集下载
第9章 创建数据库
13
9.1 创建和打开数据库
5) 使用Transact-SQL语言创建数据库
CREATE DATABASE database_name /*指定数据库名*/ [ON子句 ] /*指定数据库中数据文件和文件组属性*/ [LOG ON子句 ] /*指定日志文件属性*/
各参数的含义:database_name 所创建的数据库逻辑名称,其命名规则与一般高级 语言的标识符相同,最大长度为128个字符。
Alter Database usedb Add Log File (Name=add_use1_log, FileName= 'd:\sql\addlog1.ldf', Size=2,Maxsize=50,FileGrowth=10%)
25
9.2 修改数据库
1) 改变数据库定义
(2) 使用Transact-SQL修改数据库 例9-8 更改数据库usedb中文件add_use2的初始大小为10M 程序清单:
(2) 使用Transact-SQL修改数据库
使用ALTER DATABASE 命令可以对数据库的选项进行修改。 ALTER DATABASE命令的基本格式为:
ALTER DATABASE database_name {ADD FILE <filespec>[,…n] /*在文件组中增加数据文件*/ [TO FILEGROUP filegroup_name] | REMOVE FILE file_name /*删除数据文件*/ | ADD LOG FILE <filespec>[,…n] /*增加日志文件*/ | REMOVE FILE log_ file_name /*删除日志文件*/ | ADD FILEGROUP filegroup_name /*增加文件组*/ | REMOVE FILEGROUP filegroup_name /*删除文件组*/
9.1 创建和打开数据库
5) 使用Transact-SQL语言创建数据库
CREATE DATABASE database_name /*指定数据库名*/ [ON子句 ] /*指定数据库中数据文件和文件组属性*/ [LOG ON子句 ] /*指定日志文件属性*/
各参数的含义:database_name 所创建的数据库逻辑名称,其命名规则与一般高级 语言的标识符相同,最大长度为128个字符。
Alter Database usedb Add Log File (Name=add_use1_log, FileName= 'd:\sql\addlog1.ldf', Size=2,Maxsize=50,FileGrowth=10%)
25
9.2 修改数据库
1) 改变数据库定义
(2) 使用Transact-SQL修改数据库 例9-8 更改数据库usedb中文件add_use2的初始大小为10M 程序清单:
(2) 使用Transact-SQL修改数据库
使用ALTER DATABASE 命令可以对数据库的选项进行修改。 ALTER DATABASE命令的基本格式为:
ALTER DATABASE database_name {ADD FILE <filespec>[,…n] /*在文件组中增加数据文件*/ [TO FILEGROUP filegroup_name] | REMOVE FILE file_name /*删除数据文件*/ | ADD LOG FILE <filespec>[,…n] /*增加日志文件*/ | REMOVE FILE log_ file_name /*删除日志文件*/ | ADD FILEGROUP filegroup_name /*增加文件组*/ | REMOVE FILEGROUP filegroup_name /*删除文件组*/
ACCESS实例教程(数据库的编程)--ppt课件全
Set db=ws.OpenDatabase(数据库的地址与文件名) ' 打开数据库
Set rs=db.OpenRecordSet(表名、查询名或SQL语句) ' 打开记录集
ppt课件 ACCESS实例教程 9
Do While not rs.EOF ' 循环遍历整个记录集直至记录集末尾
……
' 对字段的各种操作
Access实例教程
ppt课件
1
ACCESS实例教程
——数据库编程(第9章)
ppt课件
2
本章要点: 1,用ADO访问数据库 2,用DAO访问数据库 3,程序运行错误处理
ppt课件 ACCESS实例教程 3
9.1 VBA数据库访问接口
VBA数据库访问接口是指VBA与后台数据库的连接部分, 也就是VBA与Access数据库连接的方法。
ppt课件 ACCESS实例教程 22
(5)转到窗体视图,如果输入的编号与表中的编号有重复,单 击命令按钮后显示消息框,输入的信息不能追加到表中。
mandType=查询类型
'指定命令对象的查询类型
mandText=查询字符串
'建立命令对象的查询字符串
rs. Open cm, 其他参数
'打开记录集
do while not rs.EOF
'循环开始
……
'对字段的各种操作
rs.movenext
'记录指针移到下一条
loop
'返回到循环开始处
作区和打开数据库两条语句用下面一条语句代替:
Set db = CurrentDb()
该语句是Access的VBA给DAO提供的数据库打开快捷方式。
第10章 数据库设计基础PPT课件
– 模式/内模式影响是唯一的。
20
应用程序 1
应用程序 2
应用程序 2
外模式 1
外模式 2
外模式(用户级数据库)
外 模 式 /模 式 映 射
模 式(概念级数据库)
模式 模 式 /内 模 式 映 射
内模式(物理级数据库)
内模式
物理数据 库
DBMS
操作系统
21
关系模型(重点)
实体和联系均用二维表来表示的数据模型称之为关系数 据模型。一张二维表,由行和列组成。目前应用最广泛。
(2)模式 ( Schema,也称逻辑模式或概念模式) – 数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共
数据视图,是数据库系统模式结构的中间层。 – 一个数据库只有一个模式。
18
(3)内模式(也称存储模式)
– 数据库在物理存储器上具体实现的描述,是数据在数 据库内部的表示方法,也是数据物理结构和存储方式 的描述。
上面特点就使得用层次模型表示1:n联系非常简便,这 是它的突出优点,但是它不能直接表示m:n的联系。
16
网状模型
用树状结构表示实体及实体间的联系。
网状模型有如下几个特点: (1)可以有一个或多个结点没有父亲结点。 (2)至少有一个结点有多个父亲结点。
17
三、数据库系统的体系结构(三级模式、二级映射)
第10章 数据库设计基础
1
第一部分
整体概述
THE FIRST PART OF THE OVERALL OVERVIEW, PLEASE SUMMARIZE THE CONTENT
2
本章主要内容
数据库系统的概述 数据库系统工作原理 关系数据库 数据库设计
3
20
应用程序 1
应用程序 2
应用程序 2
外模式 1
外模式 2
外模式(用户级数据库)
外 模 式 /模 式 映 射
模 式(概念级数据库)
模式 模 式 /内 模 式 映 射
内模式(物理级数据库)
内模式
物理数据 库
DBMS
操作系统
21
关系模型(重点)
实体和联系均用二维表来表示的数据模型称之为关系数 据模型。一张二维表,由行和列组成。目前应用最广泛。
(2)模式 ( Schema,也称逻辑模式或概念模式) – 数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共
数据视图,是数据库系统模式结构的中间层。 – 一个数据库只有一个模式。
18
(3)内模式(也称存储模式)
– 数据库在物理存储器上具体实现的描述,是数据在数 据库内部的表示方法,也是数据物理结构和存储方式 的描述。
上面特点就使得用层次模型表示1:n联系非常简便,这 是它的突出优点,但是它不能直接表示m:n的联系。
16
网状模型
用树状结构表示实体及实体间的联系。
网状模型有如下几个特点: (1)可以有一个或多个结点没有父亲结点。 (2)至少有一个结点有多个父亲结点。
17
三、数据库系统的体系结构(三级模式、二级映射)
第10章 数据库设计基础
1
第一部分
整体概述
THE FIRST PART OF THE OVERALL OVERVIEW, PLEASE SUMMARIZE THE CONTENT
2
本章主要内容
数据库系统的概述 数据库系统工作原理 关系数据库 数据库设计
3
数据库技术与应用—SQL_Server_2008(第2版)第9章_视图
【例9.1】建立计算机系学生的视图。 CREATE VIEW vw_Stu_jsj1 AS SELECT studentID, studentName, sex, speciality FROM Student WHERE speciality = '计算机' 本查询省略了视图列名,隐含为与 SELECT 语句中的列相同 的名称。
参数说明
column:视图中的列使用的名称。
组成视图的列名要么全部省略要么全部指定,没有第三 种选择。如果省略了视图的各个列名,则视图列将获得 与SELECT语句中的列相同的名称。 但是对于下列情况,必须在视图定义中指定每列的名称: 视图中有任何从算术表达式、内置函数或常量派生出 的列。 视图中两列或多列具有相同名称(通常由于视图定义 包含联接,而来自两个或多个不同表的列具有相同的 名称)。 希望使视图中的列名与它的源列名不同。这时也可以 在视图中重命名列。无论重命名与否,视图列都会继 承其源列的数据类型。
9.4 通过视图查询数据
视图定义好后,用户就可以像对基本表一样对视图进行查 询了。 【例9.7】在计算机系学生的视图中找出所有女生信息。
SELECT studentID, studentName, sex FROM vw_Stu_jsj1 WHERE sex= '女‘
系统执行对视图的查询时,首先进行有效性检查,以确认 查询中涉及到的表、视图等是否存在。如果存在,则从数 据字典中取出视图的定义,把定义好的子查询和用户的查 询结合起来,转换成等价的对基本表的查询。 例如,本例的查询就相当于执行了下面的SQL语句:
视图的分类
Oracle数据库管理与开发第9章 系统安全管理
INSERT
SELECT
UPDATE
创建用户角色
创建用户角色的语法:
create role role_name [ not identified | identified by [password] | [exeternally] | [globally]]
试一试
创建一个名为designer的角色,该角色的口令为123456
创建用户
试一试
创建一个mr用户,口令为mrsoft,并设置默认的表空间为users,临时表 空间为temp的用户。
SQL> create user mr identified by mrsoft default tablespace users temporary tablespace temp;
安全特性
3.过程安全 过程方案的对象权限(其中包括独立的过程、函数和包)只有EXECUTE权限,将这个权限 授予需要执行的过程或需要编译另一个需要调用它的过程。 (1)过程对象。具有某个过程的EXECUTE对象权限的用户可以执行该过程,也可以编译引 用该过程的程序单元。过程调用时不会检查权限。具有EXECUTE ANY PROCEDURE系统权限的 用户可以执行数据库中的任何过程。当用户需要创建过程时,必须拥有CREATE PROCEDURE 系统权限或者是CREATE ANY PROCEDURE系统权限。当需要修改过程时,需要ALTER ANY PROCEDURE系统权限。 拥有过程的用户必须拥有在过程体中引用的方案对象的权限。为了创建过程,必须为过程 引用的所有对象授予用户必要的权限。 (2)包对象。拥有包的EXECUTE对象权限的用户,可以执行包中的任何公共过程和函数, 能够访问和修改任何公共包变量的值。对于包不能授予EXECUTE权限,当为数据库应用开发 过程、函数和包时,要考虑建立安全性。
第九讲分布式地图数据库ppt课件
分布式数据库系统的模式结构
经营者提供商品或者服务有欺诈行为 的,应 当按照 消费者 的要求 增加赔 偿其受 到的损 失,增 加赔偿 的金额 为消费 者购买 商品的 价款或 接受服 务的费 用
三、分布式数据库系统——六层模式结构
全全局局外外模模式式 全全局局外外模模式式 全全局局外外模模式式
映象1
全局DSBM
(7)适当数据冗余
(8)全局一致性、可串 行性和可恢复性
服务器2
网络
DB2
客 户 ┊
服务器3 DB3
客…户┉
客户…┉
分布式数据库系统
经营者提供商品或者服务有欺诈行为 的,应 当按照 消费者 的要求 增加赔 偿其受 到的损 失,增 加赔偿 的金额 为消费 者购买 商品的 价款或 接受服 务的费 用
一、分布式数据库系统——优点
经营者提供商品或者服务有欺诈行为 的,应 当按照 消费者 的要求 增加赔 偿其受 到的损 失,增 加赔偿 的金额 为消费 者购买 商品的 价款或 接受服 务的费 用
一、分布式数据库系统概述
DB1
DB2
只不支支持持全局局部应应用用 DB3
后台服务器1 后台服务器2 后台服务器3
网络 前台客户机
客户
客户
服务器3 DB3
客…户┉
客户…┉
分布式数据库系统
经营者提供商品或者服务有欺诈行为 的,应 当按照 消费者 的要求 增加赔 偿其受 到的损 失,增 加赔偿 的金额 为消费 者购买 商品的 价款或 接受服 务的费 用
一、分布式数据库系统——特点
(5)数据独立性
DB1
(6)集中与自治相结合的控服制务结器构1
经营者提供商品或者服务有欺诈行为 的,应 当按照 消费者 的要求 增加赔 偿其受 到的损 失,增 加赔偿 的金额 为消费 者购买 商品的 价款或 接受服 务的费 用
第9章 数据库完整性li11-22
a.默认值约束定义 默认值约束定义
create table mystudent (sno char(10), sname nvarchar(4), ssex char(2), sdept nvarchar(10) default ('计算机科学 计算机科学'), 计算机科学 scomegrade smallint constraint cg_ck check (scomegrade>=0 and scomegrade<=750) ) 说明:插入行后重新打开表,可看到设定的默认值。 说明:插入行后重新打开表,可看到设定的默认值。
只能为男或女
完整性的分类 实体完整性( 实体完整性(Entity Integrity) ) 域完整性( 域完整性(Domain Integrity) ) 参照完整性( 参照完整性(Referential Integrity) ) 用户定义完整性( 用户定义完整性(User-defined Integrity) )
9.4.2 UNIQUE约束 约束
使用T-SQL语句创建 语句创建 使用
create table 雇员表 (雇员号 char(10) primary key, 雇员号 雇员名 nvarchar(8) unique ) alter table student add constraint uk_sname_s unique (sname) select * from student with (index=uk_sname_s) alter table student drop constraint uk_sname_s
• 约束: 约束:
完整性类型 约束类型
DEFAULT
描述
指定列的默认值 指定列的允许值 指定是否允许为NULL 指定是否允许为
create table mystudent (sno char(10), sname nvarchar(4), ssex char(2), sdept nvarchar(10) default ('计算机科学 计算机科学'), 计算机科学 scomegrade smallint constraint cg_ck check (scomegrade>=0 and scomegrade<=750) ) 说明:插入行后重新打开表,可看到设定的默认值。 说明:插入行后重新打开表,可看到设定的默认值。
只能为男或女
完整性的分类 实体完整性( 实体完整性(Entity Integrity) ) 域完整性( 域完整性(Domain Integrity) ) 参照完整性( 参照完整性(Referential Integrity) ) 用户定义完整性( 用户定义完整性(User-defined Integrity) )
9.4.2 UNIQUE约束 约束
使用T-SQL语句创建 语句创建 使用
create table 雇员表 (雇员号 char(10) primary key, 雇员号 雇员名 nvarchar(8) unique ) alter table student add constraint uk_sname_s unique (sname) select * from student with (index=uk_sname_s) alter table student drop constraint uk_sname_s
• 约束: 约束:
完整性类型 约束类型
DEFAULT
描述
指定列的默认值 指定列的允许值 指定是否允许为NULL 指定是否允许为
《数据库》ppt课件
• 背景: 20世纪50年代后期到60年代中期,计算机硬件方面
出现直接存取设备磁盘,软件方面出现了操作系统
• 主要特点:数据管理方面,数据被组织到文件内存储在
磁带、磁盘上,可以反复使用和保存。程序与数据的关系如
下: 应用程序1
数据组1
应用程序2
文件 管理系统
数据组2
应用程序n
数据组n
4
5.1 数据库系统概论 — 数据库阶段
S_no S_name S_gender Department Age Place
95001 李勇 男
计算机
20 江苏
95004 张立 男
计算机
19 北京
95700 杨晓冬 男
计算机
21 山西
UPDATE students SET Age=20 WHERE S_no =‘95004’
INSERT INTO students VALUES(95060, ‘王英’,‘女’ ,‘物 理’, 19,‘浙江’)
SQL功能
SQL命令
数据定义 CREATE,DROP,ALTER
数据更新 INSERT,UPDATE,DELETE
数据查询 SELECT
数据控制 GRANE,REVOKE
33
5.2 关系模型 — 数据操作示例
SELECT * FROM students WHERE Department=‘计算机’
– 或者等于S中某个元组的主码值
• 用户定义的完整性: 针对某一具体关系数据库的约束条件, 反映某一具体应用所涉及的数据必须满足的语义要求
返回
35
5.3 关系规范化设计理论 — 概念
数据关系规范化理论:定义了五种规范化模式 (Normal Form,NF,简称范式)1971年E.F.Codd
数据库第九章PPT课件
COUNT():计算表中记录数。通常以星
号(*)作为参数。
AVG():计算出所有记录指定字段的数
据平均值。
SUM():计算出所有记录指定字段的数
据总和。
26
操作实例
查询 内容
从表Foxman.dbf中查询: 1. 总共有多少条记录。 2. 薪水的最大值。 3. 薪水的最小值。 4. 薪水的平均值。
常量相等的值。即将IN所指 定的字段的记录过滤出来。
38
2.LIKE运算符 LIKE:表示与…匹配 LIKE运算符提供二种字符串匹 配方式: 一种是使用“-”,匹配一个任 意字符; 另一种是使用“%”,匹配0个 或多个任意字符串。
39
3.BETWEEN…AND运算符 BETWEEN…AND…:表示 在…之间
第9章 视图与查询操作
1
本章要点
掌握创建视图方法 与步骤,掌握利用视图 更新数据的方法,掌握 创建查询与步骤,掌握 视图与查询的应用 。
2
视图与查询是提取数据库记录、 更新数据库的一种操作方式, 视图与查询兼有表的特点,但 它们的功能远远大于表,尤其 是给多表数据信息显示、更新 和编辑提供了非常简便的方法。
操作步骤如下:
(1)选择“文件|新建”命令, 进入“新建”窗口。 (3)在“新建”窗口,选择 “查询”选项,再按“新建”按 钮,进入“添加表或视图”窗口。
18
1.选择表或视图
创建查询的目的无非是为了进行表或视图的查 询处理,因此启动查询设计器以后的第一件 事就是指定所要查询的表或视图。
数据表中所 有的字段, 其中“*”号 代表所有的
表达式 的操作 性质
筛选操 作的条 件值
条件表 达式
35
2)操作实例
数据库原理与实践(Access 2019)(第3版)董卫军 电子课件 第9章 宏的使用
OpenReport 操作:
可以在“设计”视图或“打印预览”中打开报表,或 者可以立即打印报表。也可以限制需要在报表中打印 的记录数。
OpenTable 操作:
使用 OpenTable 操作,可以在“数据表”视图、“设 计”视图或“打印预览”中打开表,也可以选择表的 数据输入模式。
Quit 操作:
3.事件驱动机制
用户 或应用程序
事件处理程 序集
事件
事件队列
取出事件
查找对应的事件处 理程序
找到
运行对应的事件处 理程序
没找到
9.2 创建宏
9.2.1 创建单操作宏
①单击功能区“创建”选项卡中“宏与代码”组中的 “宏”按钮,系统打开宏设计窗口。
②从宏窗口中的下拉列表选择操作; ③输入对应的参数; ④保存宏;
如果拖动的是宏,则添加执行此宏的操作; 如果拖动其他对象,则将添加打开相应对象的操作。
选择拖动查询对象中的“学生及本信息窗体2”对象, 可以看到其参数已经自动设置好。
2. 在宏设计器窗口中添加操作
9.2.3 创建多操作宏
9.2.4 宏的嵌套
宏的嵌套是指在宏中可以调用别的宏或宏操作。 ➢ 使用RunMacro操作,将操作参数“宏名”设置为希
OpenForm 操作:
打开“窗体”视图中的窗体、窗体设计视图、打印预 览或者数据表视图。可以为窗体选择数据项或窗口模 式,并限制窗体所显示的记录。
OpenQuery 操作:
可以在“数据表”视图、“设计”视图或“打印预览” 中打开选择查询或交叉表查询。该操作将运行一个操 作查询。可以为查询选择数据输入方式。
使用 Quit 操作可以退出 Microsoft Access。另外, Quit 操作还可以从几个有关退出 Access 之前保存数 据库对象的选项中指定一个。
可以在“设计”视图或“打印预览”中打开报表,或 者可以立即打印报表。也可以限制需要在报表中打印 的记录数。
OpenTable 操作:
使用 OpenTable 操作,可以在“数据表”视图、“设 计”视图或“打印预览”中打开表,也可以选择表的 数据输入模式。
Quit 操作:
3.事件驱动机制
用户 或应用程序
事件处理程 序集
事件
事件队列
取出事件
查找对应的事件处 理程序
找到
运行对应的事件处 理程序
没找到
9.2 创建宏
9.2.1 创建单操作宏
①单击功能区“创建”选项卡中“宏与代码”组中的 “宏”按钮,系统打开宏设计窗口。
②从宏窗口中的下拉列表选择操作; ③输入对应的参数; ④保存宏;
如果拖动的是宏,则添加执行此宏的操作; 如果拖动其他对象,则将添加打开相应对象的操作。
选择拖动查询对象中的“学生及本信息窗体2”对象, 可以看到其参数已经自动设置好。
2. 在宏设计器窗口中添加操作
9.2.3 创建多操作宏
9.2.4 宏的嵌套
宏的嵌套是指在宏中可以调用别的宏或宏操作。 ➢ 使用RunMacro操作,将操作参数“宏名”设置为希
OpenForm 操作:
打开“窗体”视图中的窗体、窗体设计视图、打印预 览或者数据表视图。可以为窗体选择数据项或窗口模 式,并限制窗体所显示的记录。
OpenQuery 操作:
可以在“数据表”视图、“设计”视图或“打印预览” 中打开选择查询或交叉表查询。该操作将运行一个操 作查询。可以为查询选择数据输入方式。
使用 Quit 操作可以退出 Microsoft Access。另外, Quit 操作还可以从几个有关退出 Access 之前保存数 据库对象的选项中指定一个。
UN_Comtrade数据库使用指南课件
学习交流PPT
13
选择商品、报告 国家、交易国家、 年份、其他进一 步筛选查询
选择交易方向
可根据交易量 对结果进行筛 选
是否累加检索单元 内各记录的数值
其他检索选项
选择商品分类
选择结果排序方式
学习交流PPT
14
检索/查询
除平台首页的快速检索框外,Data Query下拉菜单提供 四种检索方式: 快速检索 Shortcut Query 基本检索 Basic Selection 浏览器检索 Comtrade Explorer w/Map 浏览选择 Express Selection
学习交流PPT
30
按年份、时间 段依次排列, 根据商品分类 和国家浏览相 应时间段的商 品数据
年份浏览
选择不同时间段
国家列表,鼠标滑 过显示对应数据记 录数
查看该年份商品交 易情况概述
学习交流PPT
31
根据商品分类、 报告国家、年 份、上传时段 浏览数据上传 信息
上传日期浏览
商品分类、 报告国家、 年份、上传 时段选择
动态信息
学习交流PPT
5
检索/查询
除平台首页的快速检索框外,Data Query下拉菜单提供 四种检索方式: 快速检索 Shortcut Query 基本检索 Basic Selection 浏览器检索 Comtrade Explorer w/Map 浏览选择 Express Selection
学习交流PPT
12
选择商品、报告 国家、交易国家、 年份、其他进一 步筛选查询
选择年份来源, 全部/用户设置 的年份
年份列表浏览, 点击Add,确 认选择
按年份检索
选择商品分类
ACCESS数据库案例教程 刘丽 课件 第9章 系统开发
9.3 设计数据库
在进行数据库应用系统开发时,一定要设 计好数据库,设计好数据库中应有的数据 表和数据表之间的关系、数据表的结构, 然后再设计由数据表生成的查询,设计窗 体和报表,以及使用宏和VBA对成绩管理 系统的开发。 数据库应用系统的数据量越大,数据的来 源越复杂,数据库设计的好坏就越显得重 要,它将影响着整个系统的设计过程。
9.1 9.2
数据库应用系统设计流程 需求分析及主要功能模块 设计数据库
9.3
9.4 9.5 9.6 9.7
建立操作界面
创建成绩管理系统报表
实现学生成绩管理系统
维护学生成绩管理系统
9.1 数据库应用系统设计流程
数据库应用系统的开发设计过程一般 采用生命周期理论。生命周期理论是应 用系统从提出需求、形成概念开始,经 过分析论证、系统开发、使用维护,直 到淘汰或被新的应用系统所取代的一个 全过程。其设计过程可以分为6个阶段: 需求分析、概念设计、逻辑设计、物理 设计、数据库实施和运行、数据库的使 用和维护。
结合Access自身的特点,使用Access开发 一个数据库应用系统,其系统设计步骤如下: 1. 首先用户提出要求; 2. 初步调查,了解情况,进行可行性分析; 3. 设计数据库,建立系统功能模块结构图; 4. 设计数据输入界面,如窗体、数据访问页等; 5. 设计数据输出界面,如报表、查询界面等;
统计汇总报表是在设计报表时,对报表的数据源 进行统计分析,使报表输出的数据不仅是数据源 中原有的内容,同时还有统计结果。学生成绩汇 总报表,如图9-10所示。
图9-10 学生成绩汇总报表
9.6 实现学生成绩管理系统
学生成绩管理系统的功能包括:学生 信息和教师信息的录入、浏览、更新、 查询和打印。该系统的基本流程是启动 “学生成绩管理系统”时,首先打开 “系统登录”窗体,要求输入用户密码, 若密码正确,系统打开“主界面”窗体。 “主界面板”窗体包含控制整个数据库 的各项功能。
《数据库基础》PPT课件
满足最低要求的范式是第一范式,在第一范式的基础上进一 步满足更多要求的称为第二范式,其余范式以此类推。一般来 说,数据库只需满足3NF就行了。
精选ppt
下一页 返回27
1.4 关系范式
函数依赖:
定义:设有一关系模式R(A1,A2,…,An), X和Y均为(A1,A2,…,An)的子集,对于R的值r来说,
精选ppt
15
1.2 数据模型
1)关系:一个关系就是一张二维表。
2)属性:即字段,属性名叫做字段名。
3)域:一个属性的取值范围。
4)元组:即记录。
5)码(又称为关键字、主键):候选码是关系的一个或一组 属性,它的值能惟一地标识一个元组。每个关系至少都有一个 候选码,若一个关系有多个候选码,则选定其中一个为主码, 简称码。
每个学生有唯一的一个学号,学生中可以有重名的姓名, 每个学生只能属于一个系,每个系有唯一的系代号。由此, 可以找出学生关系模式中存在下列函数依赖:
S#->SN;S#->SD
例:有关系,学校简况(学号S#,系名SD,系主任MN,课程CN, 成绩G)。可写出函数依赖:
S#->SD;SD->MN;S#,CN->G
精选ppt
上一页 下一页 返回6
1.1 基本概念
4. 数据库管理系统(Data Base Management System,DBMS)
数据库管理系统是用于管理数据的计算机软件。 主要研究如何利用计算机有效地组织数据、存储数据、获取和管 理数据。
精选ppt
上一页 下一页 返回7
1.1 基本概念
简而言之,数据库管理系统就是位于用户与操作系统 (OS)之间的一层数据管理软件。
含复杂的SQL语句。它们主要用于强制服从复杂的业务规 则或要求。
精选ppt
下一页 返回27
1.4 关系范式
函数依赖:
定义:设有一关系模式R(A1,A2,…,An), X和Y均为(A1,A2,…,An)的子集,对于R的值r来说,
精选ppt
15
1.2 数据模型
1)关系:一个关系就是一张二维表。
2)属性:即字段,属性名叫做字段名。
3)域:一个属性的取值范围。
4)元组:即记录。
5)码(又称为关键字、主键):候选码是关系的一个或一组 属性,它的值能惟一地标识一个元组。每个关系至少都有一个 候选码,若一个关系有多个候选码,则选定其中一个为主码, 简称码。
每个学生有唯一的一个学号,学生中可以有重名的姓名, 每个学生只能属于一个系,每个系有唯一的系代号。由此, 可以找出学生关系模式中存在下列函数依赖:
S#->SN;S#->SD
例:有关系,学校简况(学号S#,系名SD,系主任MN,课程CN, 成绩G)。可写出函数依赖:
S#->SD;SD->MN;S#,CN->G
精选ppt
上一页 下一页 返回6
1.1 基本概念
4. 数据库管理系统(Data Base Management System,DBMS)
数据库管理系统是用于管理数据的计算机软件。 主要研究如何利用计算机有效地组织数据、存储数据、获取和管 理数据。
精选ppt
上一页 下一页 返回7
1.1 基本概念
简而言之,数据库管理系统就是位于用户与操作系统 (OS)之间的一层数据管理软件。
含复杂的SQL语句。它们主要用于强制服从复杂的业务规 则或要求。
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
对视图定义进行加密 如果不想让用户查看视图定义的文本,则需要对存储在系统表 Syscomments中的视图定义进行加密处理,这个任务可通过在Create View语句中使用With Encryption子句来实现。 例9-3、在jwgl数据库中,建立一个名为student_view3的视图,由表 course、book及class_course创建的一个显示“g99402”班所开课程的课程 名、教材名、出版社及作者,并对视图进行加密处理。 USE jwgl Go Create View student_view3 WITH Encryption AS Select course.course_name as 课程名, book.book_name as 书名, book.publish_company as 出版社, book.author as 作者 FROM course, book, class_course Where (course.book_id=book.book_id and class_course.course_id=course.course_id and class_course.class_id=‘g99402’) Go
如果在企业管理器中展开jwgl数据库下面的表,然后在内容窗格中找到系 统表Syscomments,右击此表,并从弹出菜单中选择“打开 / 返回所有行” 命令,则可看出经过加密与未加密的视图之间的差别: 在“Encrypted”列中,加密的视图显示1,未加密的视图显示0; 在“Text”列中,加密视图显示乱码,未加密视图显示定义文本。
3、使用Create View语句建立视图
Create View语句的格式: Create View 视图名 [ (字段名[ , …n]) ] [ With Encryption ] AS Select 语句 [ With check option ]
With Encryption表示对 存储视图进行加密。 With check option指出 对视图进行的修改要符 合Select语句所指定的 限制条件。
为了从“成绩表”、“学生表”、“课程表”中检索记录,需 要使用INNER Join运算来连接这三个表,查询语句为: Select a.学号,姓名,课程名称,成绩 FROM 成绩表 AS a INNER Join 学生表 AS b ON a.学号 = b.学号 INNER Join 课程表 AS c ON a.课程编号 = c.课程编号 Where c.课程名称 = ‘电子商务’
例9-1、在数据库JWGL的表student上创建一个视图student_view1,视图 的数据包括班级号为“g99402”和“g99403”所有学生的资料。 USE jwgl Go Create View student_view1 AS Select * FROM student Where (class_id=‘g99402’ or class_id=‘g99403’) Go
如要重复使用以上语句,可有以下两种选择: 在查询分析器中,将所使用的查询语句保存在磁盘文件中, 以供以后再次使用。这种文件称为查询文件,其扩展名为.sql。 以后可在查询分析器中打开、修改、执行这个查询文件。这种 方法的缺点是:查询文件是作为独立的磁盘文件存放在数据库 外部的,不便于管理和维护。 在查询语句的基础上建立视图。这种方法的优点是:视图作 为一个数据库对象存储在数据库中的,便于进行管理和维护, 而且视图像表一样还可用在查询语句中,从而简化了检索数据 的操作。在查询分析器中,可使用Create View语句来建立一个 视图。 Create View 电子商务成绩视图 AS Select a.学号,姓名,课程名称,成绩 FROM 成绩表 AS a INNER Join 学生表 AS b ON a.学号 = b.学号 INNER Join 课程表 AS c ON a.课程编号 = c.课程编号 Where c.课程名称 =‘电子商务’
⑹在网格窗格中单击“列”单元格,然后从列表中选择要在视 图中引用的字段。 ⑺如果要使一个字段出现在视图的结果集中,请选中“输入” 列中的复选框。如果在视图中引用了某个字段,又不想让它出 现在视图的结果集中,(如仅仅在过滤条件中使用这个字段), 请清除“输入”列中的复选框。 ⑻如想按某个字段分组,请右击该字段,然后从弹出菜单中选 择“分组”命令。设置分组以后,在图表窗格中相应字段的右 边会出现一个括号图标。
指定字段别名: 在Create View语句中,圆括号中的字段名用于指定在视图中使用的 字段名称。只有在下列情况下,才有必要在Create View语句中指定 字段别名: 某个字段是来自一个算术表达式、内置函数或常量; 由于在Select语句中连接多个表,致使多个字段具有相同的名称; 要给某个字段指定一个不同于基表中的字段名,如在基表中用英 文,在视图中用中文。 例9-2、建立一个名为student_view2的视图,用于从jwgl数据库的student表中 检索所有男生的学号、姓名、班级、家庭住址、入学时间、出生年月,并用中 文作字段名。 USE jwgl Go Create View student_view2 (学号 , 姓名 , 班级 , 家庭住址,入学时间, 出生年月) AS select student_id , student_name , class_id , home_addr , entrance_date , birth FROM student Where sex = 1 Go
他们直接访问基表的权限。
2、视图的限制
首先要具有Create View权限,并要注意9点。 遵循标识符命名规则,视图名称要惟一。 一个视图最多可引用1024个字段,这些字段可来自一(多)个表 或视图。 在定义视图的查询语句中,不能有ORDER BY、Compute、 INTO关键字。 视图可在其他视图上建立,最多嵌套32层。 即使删除一个视图所依赖的表或视图,这个视图的定义仍保留在数
中 北 大 学 工 业 工 程 系
第9章 视图
9.1 视图概述
9.2 建立视图 9.3 修改视图 9.4 重命名视图 9.5 删除视图
9.6 使用视图
9.1 视图概述
视图是一种常用的数据库对象,它提供查看和存取数据的另 一种途径。使用视图不仅可以简化数据库操作,还可提供数 据库的安全性。 视图是一个基于选择查询的虚拟表。视图与真实的数据库表 有很多类似的地方,例如:视图也是由若干字段(列)和一 些记录(行)组成的;也可像表那样作为Select语句的数据来 源使用;在满足某些条件的情况下,还可通过视图来插入、 更改和删除表的数据。
据库中。
不能在视图上建立索引、全文索引。
不能在视图上绑定规则、默认值和触发器。 不能建立临时视图,也不能在一个临时表上建立视图。
只能在当前数据库中创建视图。但是,视图所引用的表或视图可 以是其他数据库中的,甚至可以是其他服务器上的。
9.2 建立视图
可以使用创建视图向导、企业管理器或Create View语句都可建立视图。 1、使用向导建立视图步骤 启动企业管理器,展开一个服务器组,并展开要在其中建立视图的服务器; 选择“工具/向导”命令,出现“选择向导”对话框; 单击“数据库”左边的加号图标,然后双击“建立视图向导”; 在欢迎画面中,单击“下一步”; 从“数据库”下拉列表中,选择要在视图中引用的数据库; 选择要在视图中引用的一个或多个表,然后单击“下一步”; 选择要在视图中显示的一个或多个字段,然后单击“下一步”; 输入Where子句,限制在视图中显示的记录,然后单击“下一步”; 在View框中为所建视图指定一个名称,然后单击“下一步”; 到这里,已经完成了建立视图所需要的各个步骤,并在对话框中列出了建 立视图时需要执行的语句;如必要的话,也可在此修改语句。然后单击 “完成”按钮。 在消息框中,提示视图已经创建成功,单击“确定”,结束建立视图过程。
使用向导建立视图后,可在企业管理器中看到这个视图。其方法:在 “树”窗格中单击视图所引用的数据库,然后单击“视图”,此时在 内容窗格中可以看到所建立的视图。 如右击一个视图,然后从弹出菜单中选择“打开视图/返回所有行”命 令,就可通过这个视图来查看表中的数据。
2、使用企业管理器建立视图步骤 ⑴在“树”窗格中展开服务器,选择一个服务器。 ⑵展开数据库,然后展开要在其中建立视图的数据库。 ⑶右击“视图”节点,从弹出菜单中选择“新建视图”命令(此后 出现三个窗格:图表窗格、网格窗格、结果窗格)。 ⑷右击图表窗格,从弹出菜单中选择“添加表”命令。 ⑸ 在“表”或“视图”选项卡中,单击需要添加到新建视图中的表 或视图,然后单击“添加”,使之出现在图表窗格中。对要添加到 新视图中每个表或视图重复这个步骤以后,单击“关闭”。
如要用一个星号(*)表示所有字段,选中“输出全部列”复选框;
如要在Select语句中添加一个DISTINCT关键字,以滤掉结果集中的重复记 录,选中“输出重复行的一行”复选框; 如要对视图定义进行加密处理,选中“加密浏览”复选框;
若要指定结果集之中返回若干行记录,请在从“顶端”算起框中输入行数; 也可以在行数后面输入Percent关键字,以指定在结果集之中返回百分之几的 记录。
⑼在“准则”列中,输入提取记录时所使用的过滤条件,由此 生成一个Where子句。如指定某个字段分组,则生成一个 Having子句。在某个字段上设置过滤条件时,在图表窗格中该 字段的右边会出现一个漏斗图标。
⑽在“或”列中,Βιβλιοθήκη 入提取记录时所使用的附加过滤条件。
⑾若要设置视图的其他属性,请右击网格窗格,从弹出菜单中选择“属性” 命令,并在对话框中设置以下属性:
使用With check option 若在建立视图时使用Where子句定义一个选择条件,在使用视图进行插 入或更新的过程中却提供了不符合这个条件的数据,那么该记录虽然存 储在视图所引用的基表中,但在视图中将无法看到该记录。 为了避免发生这种情况,使用With Check Option选项,就会强制通过视 图插入或修改时的数据满足Where子句所指定的选择条件。 如果在Insert / Update语句提供的数据违反了这个选择条件,则这些语句 执行失败,并出现以下错误提示信息。