第一篇:创建数据库的相关知识
create database PeronalBlog
/*创建文章内容表(id,标题,内容,关键字)*/
create table TitleInfo(Tid varchar(20)primary key,Ttile varchar(20)not null,Ttext varchar(8000)not null,Tkey varchar(20)not null)
insert intoTitleInfo values('112401','我爱家乡','我的家乡在四处','四川')
/*创建文章信息表(文章id,文章标题,文章关键字,文章创建日期,文章浏览次数,文章类型,文章是否隐藏)*/
create table ArticleDetail(tid varchar(20)primary key,tTitle varchar(20)not null,tkey varchar(20)not null,tDate date not null,tText varchar(8000)not null,tLookNum int ,tType varchar(20)not null,tIsSee varchar(4)not null)
/*创建浏览信息表(id,浏览内容,浏览数量)*/
create table searchInfo(stId varchar(20)primary key,stTName varchar(100)not null,stDate date not null)
insert into searchInfovalues('112401','我爱家乡','2014-05-01')
/*创建留言信息表(id,留言者姓名,留言日期,留言内容,留言是否回复,回复内容)*/
create table liuyanInfo(liId varchar(20)primary key,liName varchar(20),liDate date not null,liText varchar(100)not null,liTName varchar(50)not null,liIsResponse varchar(2)not null,liResponseText varchar(100))
insert into liuyanInfovalues('112401','songyan','2014-04-04','想你了,亲!','我爱家乡','是','me too!')
/*创建评论信息表(id,评论者姓名,评论日期,评论是否审核,评论内容,评论文章id,评论文章名字)*/
create table pinglunInfo(plId varchar(20)primary key,plName varchar(20),plDate date not null,plIsCheck varchar(2),plText varchar(20)not null,plTitleId varchar(20)not null,plTName varchar(20)not null)
insert into pinglunInfovalues('112401','songyan','2014-04-04','是','good','112401','我爱家乡')
/*创建系统信息表*/
create table systemInfo(slId varchar(20)primary key,slLoginName varchar(20)not null,slPassword varchar(20)not null ,slBlogName varchar(20)not null,slBlogTheme varchar(20)not null,slOwner varchar(10)not null,slCreateDate date not null,slBlogDetail varchar(100),slBlogJianjie varchar(50))
insert into systemInfovalues('112401','owner','123456','回不到的昨天','浪漫回忆,向往未来','黄圆','2014-01-01','我的博客是我生活的写照,也是我们新一代人梦的展现..','回望过去,展望明天!')
/*个人信息*/
Create table personInfo(pid varchar(20)primary key,pname varchar(20)not null,page int not null,psex varchar(2)not null,pXingzuo varchar(6)not null,pBornPlace varchar(20),pShcool varchar(20)not null,pXueli varchar(10)not null,pIntrest varchar(20)not null,pEmail varchar(50)not null,pNum varchar(20))
insert into personInfo values('112401','黄圆',18,'女','双鱼','四川','琼州学院','本科','看相亲节目','123456@yuan','10')
/*创建用户信息*/
create table userInfo(uid varchar(20)primary key,name varchar(20)not null,password varchar(20)not null)
insert into userInfo values('112401','seeker','123')
/*好友表*/
create table friends(fid varchar(20)primary key,fname varchar(20)not null,fdate date not null,)
insert into friendsvalues('112401','songyan','2014-05-01')
/*---创建存储过程
--------------------*/
/*输入文章id查看文章类别信息*/
create procedure queryType @ttid varchar(20)
as
select ttTpyeid,tpname,tpKey,tpDetail
from titleType tp join ttTpye tt on tt.ttTypeid=tp.tpid where ttTpyeid=@ttid and tpid=@ttid
/*输入文章id,查看留言信息*/
create procedure querLiuyanInfo@tid varchar(20)
as
select
tTitle,tKey,tDate,tType,tIsSee,liName,liDate,LiText,LiIsResponse,LIResponseText
fromtitle a joinliuyanInfo b on a.tid=b.liId
where a.tid=@tid and b.liId=@tid
/*输入文章id,查看浏览信息*/
create procedure querSearchInfo@tid varchar(20)
as
select tTitle,tKey,tDate,tType,tIsSee, stText,stNum
fromtitle a joinserachInfo b on a.tid=b.stId
where a.tid=@tid and b.stId=@tid
/*输入文章id,查看评论信息*/
create procedure querPinglunInfo@tid varchar(20)
as
select tTitle,tKey,tDate,tType,tIsSee,plName,plDate,plIsCheck
fromtitle a joinpinglunInfo b on a.tid=b.plId
where a.tid=@tid and b.plId=@tid
/*增加博文*/
create procedure insertAr @tid varchar(20),@tid1 varchar(20), @Title varchar(20),@text varchar(8000),@key varchar(20),@tpName varchar(10),@date date,@num int,@isSeevarchar(4)
as
begin
begin
insert into ArticleInfo values(@tid,@Title,@text,@key)
end
begin
insert into ArticleDetail values(@tid1,@Title,@key,@date,@num,@tpName, @isSee)
end
End
select COUNT(plId)
from pinglunInfo
whereplTName in
(selecttTitle
from ArticleDetail)
/*-------------------------创建登录名和权限设定
--------------------*/
create login owner with password='123456'
create login seeker with password='123'
create user owner from login owner
create user seeker1from login seeker
grant select,delete,insert,update on liuyanInfo to owner
grant select,delete,insert,update on pinglunInfo to owner
grant select,delete,insert,update on searchInfoto owner
grant select,delete,insert,update on friendsto owner
grant select,delete,insert,update on personInfoto owner
grant select,update,insert,delete on ArticleDetail to owner
grant select,update,insert,delete on userInfo to owner
grant selecton liuyanInfo to seeker1
grant selecton pinglunInfo to seeker1
grant selecton searchInfoto seeker1
grant selecton friendsto seeker
1grant selecton personInfoto seeker1
grant selecton ArticleDetail to seeker1
112401 songyan 2014-05-01
112402 xuezeng 2014-05-01
112403 lina 2014-05-01
112404 qiushan 2014-06-01
112405 liuyan 2014-07-02
112406 huyiyi 2014-08-09
201407 zhenglihui 2014-09-09
201408 liping 2014-05-15
201409 sunzhouhong 2014-06-15
201410 sunshuai 2014-07-07
112401 songyan 2014-04-04 想你了,亲!我爱家乡 是 me too!112402 xuezeng 2014-05-05 踩一脚 我爱家乡 是 回踩!112403 qiushan 2014-05-05 呵呵 我爱家乡 是 呵呵。112404 liuyan 2014-05-06 也许天灾就在眼前 我爱家乡 是 去去去、、、112405 酸牛奶 2014-06-05 交个朋友吧 我爱家乡 是 饿@。你是、、112406 春天的敬意 2014-08-09 交个朋友吧 我爱家乡 是 您是? 112407 吹吧 2014-09-09 我的爱人呢 我爱家乡 否 无
第二篇:Geodatabase 数据库创建
Geodatabase 数据库创建 Geodatabase概述
地理数据库(GeoDatabase)是为了更好的管理和使用地理要素数据,而按照一定的模型、规则组合起来的存储空间数据和属性数据的容器。地理数据库是按照层次性的数据对象来组织地理数据的,这些数据对象包括对象类和要素数据集(feature dataset)。
对象类(Object Classes)是指存储非空间数据的表格(Table)。在Geodatabase中,对象类是一种特殊的类,它没有空间特征,如:某块地的主人。在“地块”和“主人”之间,可以定义某种关系。
要素类(Feature Classes)是具有相同几何类型和属性的要素的集合,即同类空间要素的集合。如河流、道路、植被、用地、电缆等。要素类之间可以独立存在,也可具有某种关系。当不同的要素类之间存在关系时,我们将其组织到一个要素数据集中(Feature dataset)。
要素数据集(Feature Dataset)是共享空间参考系统的要素类的集合,即一组具有相同空间参考的要素类的集合。将不同的要素类放到一个要素数据集下的理由可能很多,但一般而言,在以下三种情况下,我们考虑将不同的要素类组织到一个要素数据集中:
(1)当不同的要素类属于同一范畴。如:全国范围内某种比例尺的水系数据,其点、线、面类型的要素类可组织为同一个要素数据集。
(2)在同一几何网络中充当连接点和边的各种要素类,必须组织到同一要素数据集中。如:配电网络中,有各种开关、变压器、电缆等,它们分别对应点或线类型的要素类,在配电网络建模时,应将其全部考虑到配电网络对应的集和网络模型中去。此时,这些要素类就必须放在同一要素数据集下。
(3)对于共享公共几何特征的要素类,如:用地、水系、行政边界等。当移动其中的一个要素时,其公共的部分也要求一起移动,并保持这种公共边关系不变。此种情况下,也要将这些要素类放到同一个要素数据集中。
对象类、要素类和要素数据集是Geodatabase中的基本组成项。当在数据库中创建了目这些项目后,可以向数据库中加载数据,并进一步定义数据库,如建立索引,建立拓扑关系,创建子类、几何网络类、注释类、关系类等。Geodatabase的数据组织如图3.21所示。
2.地理数据库建立的一般过程
建立地理数据库的第一步,是设计地理数据库将要包含的要素类、要素数据集、非空间对象表、几何网络类、关系类及空间参考系统等;地理数据库设计完成之后,可以利用ArcCatalog开始建立数据库:首先建立空的地理数据库,然后建立其组成项,包括建立关系表、要素类、要素数据集等;最后向地理数据库各项加载数据。
当在关系表和要素类中加入数据后,可以在适当的字段上建立索引,以便提高查询效率。建立了地理数据库的关系表、要素类和要素数据集后,可以进一步建立更高级的项,例如,空间要素的几何网络、空间要素或非空间要素类之间的关系类等。
1)地理数据库设计
地理数据库的设计是一个重要的过程,应该根据项目的需要进行规划和反复设计。在设计一个地理数据库之前,必须考虑一下几个问题:
a.在数据库中存储什么数据 b.数据存储采用什么投影
c.是否需要建立数据修改的规则 d.如何组织对象类和子类
e.是否需要在不同类型对象间维护特殊的关系 f.数据库中是否包含网络 g.数据库是否存储定制对象
回答了上述问题后,就可以开始地理数据库的建立了。
2)地理数据库建立
借助ArcGIS9的ArcCatalog,可以采用以下三种方法在创建一个新的地理数据库,选择何种方法将取决于建立地理数据库的数据源、是否在地理数据库中存放定制对象。实际操作中,经常联合几种或全部方法来创建地理数据库。
(1)从头开始建立一个新的地理数据库
有些情况下,可能没有任何可装载的数据,或者已经有的数据只能部分地满足数据库的设计,这时,可以用ArcCatalog来建立新的要素数据集、表、几何网络和其他地理数据库项的模式。
(2)移植已经存在数据到地理数据库
对于已经存在的多种格式的数据:Shapefile、Coverage、INFO Table、dBase Table等,以及其它系统中的数据格式: ArcStrom、Map LIBARISN、ArcSDE等,可以通过ArcCatalog来转换并输入到地理数据库中,并进一步定义数据库,包括建立几何网络(Geometric Network)、子类型(Subtypes)、属性域(Attribute Domains)等。
(3)用CASE工具建立地理数据库
可以用CASE工具建立新的定制对象,或从UML图中产生地理数据库模式。面向对象的设计工具可以用于建立对象模型、表示定制。基于这些模型,CASE工具的代码产生向导(Code Generation Wizard)帮助你建立COM对象,以实现定制对象的行为,建立和管理定制对象的数据库模式。
本节着重介绍建立本地个人地理数据库的一般过程和方法,有关CASE工具建立地理数据库的部分及ArcSDE等内容省略。
3)建立空的数据库中的基本组成项
一个空的地理数据库,其基本组成项包括关系表、要素类、要素数据集。当数据库中 建立了以上三项,并加载了数据之后,一个简单的地理数据库就建成了。
4)向地理数据库各项加载数据
可以用ArcMap中的Editor工具栏来建立新的对象,或调用已经存在的Shapefiles、Coverages、INFO Tables和dBaseTables数据来装载数据库对象。
5)进一步定义数据库
对于数据库中加载的数据,可以在适当的字段上建立索引,以便提高查询效率。并可以在建立了数据库的基本组成项后,进一步建立更高级的项,例如空间要素的几何网络、空间要素或非空间要素类之间的关系类等。一个地理数据库只有定义了这些高级项后,才能显出地理数据库在数据组织和应用上的强大优势。创建一个新的地理数据库
借助ArcCatalog可以建立两种地理数据库:本地个人地理数据库(Personal Geodatabase)和ArcSDE地理数据库。个人地理数据库可以直接在ArcCatalog环境中建立,而ArcSDE地理数据库必须首先在网络服务器上安装数据库管理系统(DBMS)和ArcSDE,然后建立从ArcCatalog到ArcSDE地理数据库的一个连接。以建立本地个人地理数据库为例:
在ArcCatalog树中选择一个文件夹,单击File菜单,或在选中的文件夹上点右键,选择New,再选择Personal Geodatabase,如图3.22所示。输入个人数据库的名称,这时该数据库是空的。
图3.22 建立本地个人地理数据库 建立数据库
Geodatabase中的基本组成项包括对象类、要素类和要素数据集。当数据库中创建了这些项目后,可以建立更进一步的项目,如子类、几何网络、注释类等。
1)建立要素数据集
建立一个新的要素数据集,必须定义其空间参考,包括坐标系统和坐标域。数据集中的所有要素类用相同的坐标系统,所有要素类的所有要素的坐标必须在域的范围内。在定义坐标系统时,可以选择预先定义的坐标系,或者以已有的要素数据集的坐标系或独立要素类的坐标系作为模板,或者自己定义。
(1)在ArcCatalog目录树中,在需要建立新要素数据集的地理数据库上单击右键,单击New,选择Feature Dataset命令,打开New Feature Dataset对话框,如图3.23所示。(2)在Name窗口输入要素数据集名称,单击Edit按钮,打开Spatial Reference属性对话框,如图3.24所示。
图3.23 New Feature 对话框图 3.23 Spatial Reference属性对话框
(3)进入Coordinate System选项卡,单击Select或Import来设置要素数据集的空间参考。或单击New定义新的投影和坐标系统。定义好后可以单击Modify按钮编辑所选择的坐标系统参数。
(4)进入X/Y Domain选项卡,如图3.25所示。在数值窗口分别输入数据集的最大最小X,Y值及所需精度。(5)进入Z Domain选项卡,如果要素数据集中的要素类有Z值,输入最大最小的Z值及所需精度。
(6)进入M Domain选项卡,如果要素数据集中的要素类有M值,输入最大最小的M值及所需精度。(7)单击确定按钮即可完成要素数据集的空间参考的定义。
2)建立要素类
要素类分为简单要素类和独立要素类。简单要素类存放在要素数据集中,不需要定义空间坐标;独立要素类存放在要素数据集之外,必须定义空间坐标。
(1)建立一个简单的要素类
1)在ArcCatalog目录树中,在需要建立要素类的要素数据集上单击右键,单击New,选择Feature Class命令,如图3.26所示。
图3.26 在要素数据集中建立要素类
2)打开New Feature Class对话框,如图3.27所示。在Name文本框中输入要素类名称,在Alias文本框中输入要素类假名,假名是对真名的描述。在Type选项组选择This feature class will store ESRI simple features单选按钮。
3)单击下一步按钮,打开确定要素类数据库关键字对话框,如图3.28所示。选择Use configuration keyword单选按钮,输入关键字,这是为新表或要素类指定相关的数据库存储参数(如果想用默认的要素类存储参数,单击Default)。
图3.39 确定要素类字段名及其类型与属性 图3.30 定义要素类几何字段属性
4)单击下一步按钮,打开确定要素类字段名及其类型与属性对话框,如图3.29所示。在简单要素类中,OBJECTID和SHAPE字段是必需字段,OBJECTID是要素的ID,SHAPE是要素的几何形状,如点、线、多边形等。
5)单击Field Name列下面的第一个空白行,添加新字段,输入新字段名,并选取数据类型。
6)在Field Properties栏中显示字段属性:新字段名的假名、字段在ArcMap Editor中的可编辑状态、新字段中是否允许出现空值Null;在Default Value 右边输入默认值,建立默认值与字段的关联关系;在Domain右边,单击字段的域,把一个域同字段关联。
7)单击Field Name列下的字段SHAPE,在Field Properties选项卡显示几何字段SHAPE的属性特征。如图3.30所示。
8)在Field Properties栏中输入几何字段假名,并在Allow NULL values中选择No,几何字段中禁止出现空值Null,在Geometry Type 中选择该要素类中存储的要素类型。
9)分别在Gridq,Grid2,Grid3右边输入几何要素类的空间索引格网大小(Grid1必须大于0,Grid2和Grid3可以是0)
10)在contains Z Values 右边选择Yes,让这个要素类的几何字段存储Z值。在contains M Values右边选择Yes, 让这个要素类的几何字段存储M值。
11)因为正在要素集中建立要素类,所以不能修改空间参考。
12)单击完成按钮,即可完成几何字段属性的定义,建立一个简单要素类。
(2)建立一个独立要素类
独立要素类就是在地理数据库中不属于任何要素数据集的要素类,其建立方法与在要中建立简单要素类相似。只是独立要素类
设定自己的投影系统参数和X/Y域。1)在ArcCatalog目录树中,在需要建立独立要素类的地理数据库上单击右键,单击New,选择Feature Class命令。2)其余过程与建立简单要素类相同,直到进入定义要素类几何字段属性对话框,参见图3.30。单击Spatial Reference属性按钮,打开Spatial Reference属性对话框,即可建立自己的空间参考坐标系统和X/Y域。3)单击完成按钮。
第三篇:access创建数据库-教案
创建数据库
计算机组
余金光
一.教学重点 1.数据库的创建方法 2.退出数据库 二.教学难点
打开数据库的方法和退出关闭数据库的方法 三.教学方法
演示法,讨论法,讲授法,练习法 四.教学课时:1课时 五.教学过程 1.情景导入
通过多媒体播放和access数据库相关的视频,让学生直观认识access在实际工作中的应用,并鼓励学生发表自己的看法。
2.引入新课
结合上面的视频内容,分析access在示例中的是如何发挥作用的,进而引申出access数据库的概念,并让学生思考如何创建数据库。
3.创建数据库的方法
通过PPT的播放,让学生直观了解数据库的创建方法: 1.“文件”>>“新建”>>“空数据”、“根据现有文件”、“本机上的模板”、“office online模板...”
2.数据库的打开和关闭 由于新创建的数据库文件在退出access2003前默认是打开的,使用其他的数据库文件或新建数据库已关闭的,需要打开数据库文件。
通过过媒体演示,让学生观看具体的创建和打开关闭方法。并根据教师的演示,让学生通过学生机进行实际演练,对在演练中发现的问题及时反馈。
六.教学总结
本节课主要介绍了数据库的创建、打开和退出方法。通过一系列的现代化技术的应用,使同学们能够直观形象的对该课程的知识具备了初步和认识和简单的操作能力,同时要求同学们在课下要多加思考其他与数据库创建有关的内容,认真完成课后作业。
第四篇:VFP讲稿(创建数据库和表)
第二部分
数据库的创建与单命令
创建数据库和表
一、Visual FoxPro 6.0的配置
P28
二、项目及其管理器
P31
1.项目的概念
项目:是文件、数据、文档和Visual FoxPro对象的集合,被保存为扩展名为PJX的文件。
建立项目可以对相关的内容(项目的各组成部分)进行统一组织、统一管理。
项目管理器:是Visual FoxPro中处理数据和对象的主要组织工具,是Visual FoxPro的“控制中心”。
项目管理器为其各个组成部分提供了一个组织良好的分层结构视图。利用项目管理器,用户可以创建、修改、移出或删除文件。只要简单地单击鼠标,就可以跟踪表和查询,组织表单、报表、标签、代码、位图和其它文件。
2.项目的创建
3.一个项目产生两个文件.PJX和.PJT。4.打开/关闭项目 5.选项卡
三、Visual FoxPro 数据库的基本操作
P93 1.建立数据库
(1)在项目管理器中建立 *(2)从“新建”对话框中建立 *(3)用命令建立
P94(4)新建立的数据库有三个文件
三个文件的扩展名分别是:dbc
dct
dcx dbc数据库文件的扩展名 dct数据库备注文件的扩展名 dcx数据库索引文件的扩展名 2.打开和关闭数据库(1)打开数据库 有三种打开方法: 在项目管理器中打开 *从“打开”对话框中打开 *用命令打开
OPEN DATABASE命令
P95(2)关闭数据库 CLOSE DATABASE 3.数据库设计器
有三种打开方法: 在项目管理器中打开 *从“打开”对话框中打开 *用命令打开
MODIFY DATABASE命令
P98 4删除数据库
有两种删除方法: 在项目管理器中删除 *用命令删除
DELETE DATABASE命令
P99
四、数据库表
1.建立数据库表
P99(1)表设计器
(2)字段名:命名规则与内存变量的命名规则相同。可与内存变量同名。(3)字段类型和宽度(4)建立数据库表产生的文件(5)字段有效性组框(6)用命令建立表
使用命令CREATE <表名> 有打开的数据库时,建立的是数据库表,否则建立的是自由表。2.修改表结构
P102(1)插入字段(2)删除字段(3)修改字段
(4)用命令MODIFY STRUCTURE打开表设计器进行修改
五、自由表
如果当前没有打开数据库,创建的表是自由表。1.创建自由表。
2.自由表和数据库表的异同。
自由表和数据库表的设计器不同。*数据库表有很多附加信息。3.将自由表添加到数据库。4.从数据库中移出表。
第五篇:Access数据库重点知识总结
Access数据库重点知识总结
8.1 数据库系统基础知识
8.1.1 数据库系统的组成一、数据库的发展
数据库技术是计算机科学技术的一个重要分支。随着计算机的发展,数据库技术经历了三个阶段:人工管理阶段、文件管理阶段、数据库管理阶段。
人工管理阶段,数据不保存,用时直接输入,算完后结束。
文件系统管理阶段,数据单独保存在文件中(如第六章的文件),这种形式的数据共享只能以文件为单位;缺点是数据大量重复,同时给数据维护带来很多麻烦,为了解决这样的问题,出现数据的统一管理,达到数据共享的目的,产生和发展了数据库技术。
二、数据库的特点
数据库是为满足多个应用系统的需要、按照一定的结构在计算机中建立起来的相关数据集合。数据库中的数据是结构化的,数据是面向全局的,数据是可以共享的。在数据库系统管理阶段,数据以数据库为中心,数据与程序之间是一对多的关系,具有数据重复少,独立性高,完整性、并发性和可恢复性等优点。
三、数据库系统的组成
从广义上讲,一个数据库系统由计算机硬件(物理设备)、系统软件、数据库、数据库管理系统和数据库应用软件五部分组成,涉及到的人员有数据库管理员、应用软件开发人员和最终用户。
五部分为:
1、计算机硬件(物理设备)。
2、系统软件(操作系统、各种语言的编译程序等)。
3、数据库(用来存放数据的文件,它是一个容器,在一个库中可以有许多的表、查询、窗体等)。
4、数据库管理系统(用于创建数据库,对库中的数据进行编辑)。
5、应用软件(用Vb语言编写的应用程序)。
数据库系统投入运行,必须要有人去维护(称为数据库维护人员);编写这些应用软件必须要有软件人员来完成;最后使用这些软件的前台人员(终端用户)。
8.1.2 数据库系统的分层结构
从数据独立性的角度看,数据库系统中的数据通常抽象为物理层、逻辑层和视图层这样三层结构。物理层的具体实现由数据库管理系统借助操作系统的功能来完成。逻辑层用于描述数据库中应该包括哪些数据以及数据之间存在哪些关系,它是数据库中全部数据的逻辑描述,也是数据库的逻辑结构。视图层也叫外模式,它是特定用户和应用程序的数据视图,是数据库中与某一应用有关的部分数据的逻辑表示。一个数据库可以有多个不同的视图,也反映了不同需求的用户从不同的角度所看到的数据库。
在Access数据库系统中,物理层存储由DBMS全权负责,基本上不需要应用程序员和用户关心,逻辑层由数据库中的所有的表组成,而视图层由特定的查询和应用程序组成。
8.1.3 关系数据模型
数据模型是用于描述现实世界的工具。一组严格定义的概念集合,它们精确地描述了数据和数据之间的关系、对数据的操作以及有关的语义约束规则。
(1)概念数据模型
面向现实世界和终端用户,不依赖具体的DBMS,是从现实世界到信息世界的抽象。主要用于需求分析,常用的概念模型有:实体-关系(E-R)模型。
例如:
关系模式:
职工(编号,姓名,性别,籍贯)
(2)逻辑数据模型
逻辑数据模型则是面向应用软件开发人员和数据库管理人员,与DBMS密切相关,主要用于数据库及其应用程序的开发实现。
常用的逻辑模型有层次模型、网状模型和关系模型。关系型是目前使用最多的模型。例如:
职工表:
编号
姓名
性别
籍贯
1001
李平
女
山西
1002
王林
男
河南
2001
赵新
男
广东
(3)物理数据模型
物理数据模型用来反映数据的物理储存结构,对应于数据库系统的物理层。物理数据模型不但与DBMS有关,还与操作系统和计算机硬件等有关。主要面向DBA,用于提高数据库系统的运行性能。
关系数据模型数据库:
关系数据模型是当前使用最广泛的数据库系统模型,常见的关系数据库有Oracle、DB2、Sybase、SQL Server等大中型数据库管理系统,Access也是一个关系型数据库管理系统。
在关系模型中采用相互关联而又互相独立的多个二维表格来反映各种数据关系。所有数据元素都存在于称作“关系”的二维表格中,这些表以行和列的形式来组织数据,从而简化了数据的存取和操作。
一个关系就是一个二维表,这种用二维表的形式表示实体和实体间联系的数据模型称为关系数据模型。
仓库表:
仓库号
城市
面积
WH1
北京
370
WH2
上海
500
WH3
广州
300
WH4
武汉
400
职工表:
仓库号
职工号
工资
WH2 E1 1220
WH1 E3 1210
WH2 E4 1250
WH3 E6 1230
WH1 E7 1250
在关系模型中表中的每一行称为一个元组(一条记录)。表中的列称为属性或字段,列的名字称为属性名,在列中填写的数据称为属性值。在关系模型中,表的每一列的数据类型必须一致,一个列所有可能的取值就称为属性域。属性名、属性域、属性值是彼此密切联系但又存在明显差别的概念。特点为:
① 一个关系必须规范化,在一个关系中每个属性必须是不可分割的数据单元;
②在一个关系中不能出现相同的属性名(字段名);
③关系中不允许有完全相同的元组(记录);
④在一个关系中元组的次序无关紧要;
⑤在一个关系中列的次序无关紧要,通常重要的关键字在左边。
一个具体的关系模型由若干关系模式组成,在一个数据库中包含相互之间存在联系的多个表,这个数据库文件就代表一个实际的关系模型。
8.2 ACCESS集成开发环境
8.2.1 Access简介
Access是Microsoft公司推出的一种关系型数据库管理系统,在开始时,Microsoft将Access单独作为一个产品进行销售,在发行Office 97时,Microsoft将Access作为Office套件中的一个重要成员一起发布。最新版本Access 2003也已经开始随同Office 2003发布。
Access已经是世界上最流行的桌面数据库管理系统。
8.2.2 Access数据库系统的组成
Access的主工作窗口与Office其他软件的界面类似,由菜单、工具和若干任务窗口组成。
数据库包含了表、查询、窗体、报表、页、宏和模块共七大对象,数据库中的数据来源是数据表,由数据表生成的查询和数据表一起构成了整个数据库中所有对象的基础数据来源。
一个数据库可分为三层:物理层、逻辑层和视图层。
Access物理层(数据库存储格式)就是一个名为.MDB的文件,由Access数据库管理系统管理,不需要应用程序员和用户关心。
逻辑层对应数据库中所有的表和表之间的关联(如:仓库表和职工表以及表之间的关联)。
视图层由查询、窗体、报表、页、宏和模块等对象来实现(结果)。
查询以表作为数据源,按照一定的条件或要求对表中的数据进行处理,得到一个外观形式与表一样的数据视图(也称虚拟表)。要注意的是查询不是真正的表。对于数据库表中保存的同一批数据(原始数据),用户可以通过查询按照不同的方式去查看、更改和分析。查询对象本身仅仅保存查询命令,它描述的是从逻辑层到视图层的映射关系。查询可作为窗体、报表的数据源。
窗体是开发人员提供给最终用户处理业务的界面,它的设计与实现与VB类似。
报表是供用户以打印格式输出数据的对象。
页用于查看来自Internet的数据。
宏是一个或多个操作的集合(指令的集合)。
模块与VB类似(标准模块),用于存放代码,以实现代码的重用。
8.2.3 Access数据库系统的建立
在Access中建立一个数据库系统大概有如下的主要步骤:
(1)根据用户需求建立表及其关系。
(2)设计用户视图,建立查询。
(3)设计交互界面,建立窗体、报表
(4)编写事件过程、模块等。
(5)测试、生成应用系统。
为了提高开发应用系统的效率,Access提供了一些常见的数据库应用模板,如订单入口模板、库存控制模板等。通过向导可自动建立一个数据库系统,步骤如下:
(1)单击工具栏上的“新建”按钮,在“新建文件”任务窗格中的“根据模板新建”下,单击“通用模板”
(2)在“数据库”选项卡上,单击要创建的数据库类型的图标。
(3)在“文件新建数据库”对话框中,指定数据库的名称和位置,然后按照“数据库向导”的指导进行操作即可。
8.3 Access数据库的安全
数据库的安全性是指数据库系统防止不合法使用所造成的数据泄漏、更改或破坏的能力。在Access环境中,“工具”菜单下“安全”菜单项。
8.3.1 密码保护
Access数据库密码保护即对打开的 Access 数据库设置密码。设置密码后,打开数据库时将要求输入密码。
设置数据库密码 :
首先以独占的方式打开数据库对象。然后选择“工具”菜单中“安全”菜单项的“设置数据库密码”命令,打开设置数据库密码对话框输入密码。
8.3.2 用户级安全机制
8.3 本章小结
数据库发展经历了三个阶段:人工阶段、文件阶段和数据库阶段。
数据管理是计算机最主要的应用领域,数据库系统是数据管理的主要工具。一个数据库系统由计算机硬件、系统软件、数据库、数据库管理系统和数据库应用软件五个部分组成,涉及到的人员有数据库管理员、软件开发人员和最终用户。
数据模型是一组严格定义的概念集合,它们精确的描述了数据和数据之间的关系、对数据的操作以及有关的语义的约束规则。数据模型有三种:层次型、网状型和关系型,关系数据模型是当前使用最广泛的数据库系统模型,Access使用的是关系模型,所以它是一个关系型数据库管理系统。在关系模型中采用相互关联而又互相独立的多个二维表格来反映各种数据关系,所有数据元素都存在于称作关系的二维表中。
Access数据库包含有表、查询、窗体、报表、页、宏和模块等对象,其中数据库物理层是后缀名为”.mdb”的文件,逻辑层对应的是数据库中所有的表以及表之间的关联,视图层由查询、窗体、报表、页、宏和模块等对象来实现。
数据库的安全性是指数据库系统防止不合法使用所造成的数据泄漏、更改或破坏的能力。