数据库过程
① 数据库的发展过程
一、摇篮和萌芽阶段:首先使用"DataBase"一词的是美国系统发展公司在为美国海军基地在60年代研制数据中引用。
1963年,C·W·Bachman设计开发的IDS(Integrate Data Store)系统开始投入运行,它可以为多个COBOL程序共享数据库。
1968年,网状数据库系统TOTAL等开始出现;
1969年,IBM公司Mc Gee等人开发的层次式数据库系统的IMS系统发表,它可以让多个程序共享数据库。
1969年10月,CODASYL数据库研制者提出了网络模型数据库系统规范报告DBTG,使数据库系统开始走向规范化和标准化。正因为如此,许多专家认为数据库技术起源于20世纪60年代末。数据库技术的产生来源于社会的实际需要,而数据技术的实现必须有理论作为指导,系统的开发和应用又不断地促进数据库理论的发展和完善。
二、发展阶段:20世纪80年代大量商品化的关系数据库系统问世并被广泛的推广使用,既有适应大型计算机系统的,也有适用与中、小型和微型计算机系统的。这一时期分布式数据库系统也走向使用。
1970年,IBM公司San Jose研究所的E ·F ·Code发表了题为"大型共享数据库的数据关系模型"论文,开创了数据库的关系方法和关系规范化的理论研究。关系方法由于其理论上的完美和结构上的简单,对数据库技术的发展起了至关重要的作用,成功地奠定了关系数据理论的基石。
1971年,美国数据系统语言协会在正式发表的DBTG报告中,提出了三级抽象模式,即对应用程序所需的那部分数据结构描述的外模式,对整个客体系统数据结构描述的概念模式,对数据存储结构描述的内模式,解决了数据独立性的问题。
1974年,IBM公司San Jose研究所研制成功了关系数据库管理系统System R,并且投放到软件市场。
1976年,美籍华人陈平山提出了数据库逻辑设计的实际(体)联系方法。
1978年,新奥尔良发表了DBDWD报告,他把数据库系统的设计过程划分为四个阶段:需求分析、信息分析与定义、逻辑设计和物理设计。
1980年,J·D·Ulman所着的《数据库系统原理》一书正式出版。
1981年 E· F· Code获得了计算机科学的最高奖ACM图林奖。
1984年,David Marer所着的《关系数据库理论》一书,标志着数据库在理论上的成熟。
三、成熟阶段:80年代至今,数据库理论和应用进入成熟发展时期 易观国际发布《IT产品和服务-2007年中国数据库软件市场数据监测》,考察了中国数据库管理软件市场。数据显示,中国商业数据库市场2007年度整体规模达到21.72亿人民币,比去年同期增长15%。从厂商竞争格局来看,国际软件巨头占据市场的绝大多数份额。Oracle、IBM、Microsoft和Sybase牢牢占据国内数据库软件市场前四位,拥有93.8%的市场份额。国产数据库的市场份额在本季度继续提升,正在抓住国家提倡自主创新的机遇,以“有自主知识产权”的产品为契机,满足部委和地方政府的信息整合平台需求。 2008年,中国商业数据库市场整体规模达到了28.25亿元,比上个年度增长了30%,一方面,主要是因为中国电子政务建设的大幅增加,以及中国政府对版权的高度重视。其中,Oracle占据了其中44%的市场份额,IBM占据了其中20%的份额、微软占据了18%的份额,Sybase占据了10%,而国产数据库因为在政府的支持下,已经占据了8%的市场份额,较2007年同比提升了25%。其中,达梦数据库年销售额为6600万元,为国产数据库中市场份额最大的。预计中国商业数据库市场在2009年达到31亿元的市场规模,同时,国产数据库在中国政府鼓励自主创新的基础下,会占据更大的市场份额。 另外,包括Mysql等开源数据库也占据了大量的政府及中小企事业用户,同时,盗版数据库更是占据了中国数据库市场的较大份额,其数值不亚于整个商业数据库的市场份额。
② 数据库里什么是过程
procere就是过程
像这样的语句执行成功后,就会创建一个过程
create
or
replace
procere
a_test
(
......
)
as
.......
begin
select
*
from
al;
end;
③ 什么是数据库存储过程
存储过程(Stored Procere)是在大型数据库系统中,一组为了完成特定功能的SQL 语句集,它存储在数据库中,一次编译后永久有效,用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它。存储过程是数据库中的一个重要对象。在数据量特别庞大的情况下利用存储过程能达到倍速的效率提升。
这类语言主要提供以下功能,让用户可以设计出符合应用需求的程序:
1、变量说明
2、ANSI(美国国家标准化组织)兼容的SQL命令(如Select,Update….)
3、一般流程控制命令(if…else…、while….)
4、内部函数
(3)数据库过程扩展阅读:
种类
1、系统存储过程
2、本地存储过程
3、临时存储过程
4、远程存储过程
5、扩展存储过程
④ 数据库查询过程是怎么实现的
数据库查询过程是怎么实现的
首先我解释一下,查询数据库本身就没有间断,数据库接口语言在相应数据库查询接口的时候本身获取的就是一个数据集合,数据集合是一个静态的东西,用他去做查询就没间断过。当数据表不间断变化数据量的时候,你需要定时响应查询这种不间断,就需要刷新数据集合,连接对象不要关闭。在编程应用中像我们的ACCESS链接表,你看就是这样的,对于表视图,每次刷新或者重新打开数据表就是最新获取的数据。在编程过程中我们并不提倡这样去查询数据库,一般是用消息推送方式。
⑤ 什么叫作数据库的存储过程
存储过程就是将常用的或很复杂的工作,预先用SQL语句写好并用一个指定的名称存储起来,并且这样的语句是放在数据库中的,还可以根据条件执行不同SQL语句, 那么以后要叫数据库提供与已定义好的存储过程的功能相同的服务时,只需调用execute,即可自动完成命令。 存储过程的优点 1.存储过程只在创造时进行编译即可,以后每次执行存储过程都不需再重新编译,而我们通常使用的SQL语句每执行一次就编译一次,所以使用存储过程可提高数据库执行速度。 2.经常会遇到复杂的业务逻辑和对数据库的操作,这个时候就会用SP来封装数据库操作。当对数据库进行复杂操作时(如对多个表进行Update,Insert,Query,Delete时),可将此复杂操作用存储过程封装起来与数据库提供的事务处理结合一起使用。可以极大的提高数据库的使用效率,减少程序的执行时间,这一点在较大数据量的数据库的操作中是非常重要的。在代码上看,SQL语句和程序代码语句的分离,可以提高程序代码的可读性。 3.存储过程可以设置参数,可以根据传入参数的不同重复使用同一个存储过程,从而高效的提高代码的优化率和可读性。 4.安全性高,可设定只有某此用户才具有对指定存储过程的使用权存储过程的种类: (1)系统存储过程:以sp_开头,用来进行系统的各项设定.取得信息.相关管理工作,如 sp_help就是取得指定对象的相关信息。 (2)扩展存储过程 以XP_开头,用来调用操作系统提供的功能exec master..xp_cmdshell 'ping 10.8.16.1' (3)用户自定义的存储过程,这是我们所指的存储过程常用格式 模版:Create procere procee_name [@parameter data_type][output][with]{recompile|encryption} as sql_statement 解释:output:表示此参数是可传回的 with {recompile|encryption} recompile:表示每次执行此存储过程时都重新编译一次;encryption:所创建的存储过程的内容会被加密。
⑥ 数据库存储过程
exec(@sql)内生成的表,只在exec函数内部有效,在exec函数是不可见的
局部临时表只局限于创建进程以及创建进程的子进程
那么将存储过程看作是一个进程1,而exec(@sql)则是另一个进程2
根据我上面说的,#temp只会作用于创建它的进程2中
那么要想使#temp贯穿整个存储过程,则需要在存储过程中先用create table #temp来创建这个临时表,这样这个临时表的创建者就升级成了进程1,其他的无论进程2、进程3都是进程1的子进程,这样就都能引用到#temp,此时进程2中的语句就要改写成insert into而不是select into了
不过这个前提是你已知晓表结构,可以固定的创建临时表
否则你只能用exec(@sql)的形式将整个存储过程体都以拼接的方式执行
也就是不通过临时表,直接用exec(@sql)将查询结果输出
⑦ 什么是数据库存储过程
SQL的调用可以分为函数和存储过程。
个人理解,其实函数和存储过程是相似的,至少在引用的时候跟函数很是一样。或者干脆把存储过程理解为另一种函数,另一种经过优化的函数。它的优点在于,存储过程在被编译后会被直接保存在数据库中,成为数据库的一部分,以后就可以反复调用,运行速度快,效率高,这些是函数做不到的。
⑧ 试述数据库完整的设计过程
数据库设计的过程(六个阶段)
1.需求分析阶段
准确了解与分析用户需求(包括数据与处理)
是整个设计过程的基础,是最困难、最耗费时间的一步
2.概念结构设计阶段
是整个数据库设计的关键
通过对用户需求进行综合、归纳与抽象,形成一个独立于具体DBMS的概念模型
3.逻辑结构设计阶段
将概念结构转换为某个DBMS所支持的数据模型
对其进行优化
4.数据库物理设计阶段
为逻辑数据模型选取一个最适合应用环境的物理结构(包括存储结构和存取方法)
5.数据库实施阶段
运用DBMS提供的数据语言、工具及宿主语言,根据逻辑设计和物理设计的结果
建立数据库,编制与调试应用程序,组织数据入库,并进行试运行
6.数据库运行和维护阶段
数据库应用系统经过试运行后即可投入正式运行。
在数据库系统运行过程中必须不断地对其进行评价、调整与修改
设计特点:
在设计过程中把数据库的设计和对数据库中数据处理的设计紧密结合起来将这两个方面的需求分析、抽象、设计、实现在各个阶段同时进行,相互参照,相互补充,以完善两方面的设计
⑨ 简述一个数据库应用系统的建立过程
数据库建立过程包括六个主要步骤:
1.需求分析:了解用户的数据需求、处理需求、安全和完整性需求。
2.概念设计:通过数据抽象,设计系统的概念模型,一般为e-r模型。
3.逻辑结构设计:设计系统的模式和外部模式,特别是关系模型的基本表和视图。
4.物理结构设计:设计数据的存储结构和访问方法,如索引的设计。
5.系统实现:组织数据存储,编写应用程序,试运行。
6.运维:系统投入运行,进行长期维护。
(9)数据库过程扩展阅读:
数据库设计技巧:
1.原始文档与实体之间的关系
它可以是一对一、一对多、多对多。一般来说,它们是一对一的关系:也就是说,原始文档只对应于一个实体,而且只对应于一个实体。在特殊情况下,它们可能是一对多或多对一的,其中一个原始文档对应多个实体,或者多个原始文档对应一个实体。
这里的实体可以理解为基本表。在明确了这些对应关系之后,这对于输入接口的设计是非常有益的。
2.主键和外键
通常,实体不能同时没有主键和外键。在e-r关系图中,叶中的实体可以定义主键,也可以不定义主键(因为它没有后代),但是它必须有外键(因为它有父键)。
主键和外键的设计在全局数据库的设计中起着重要的作用。当全球数据库的设计完成后,一位美国的数据库设计专家说:“钥匙,钥匙无处不在,只有钥匙”,这是他的数据库设计经验,也是他高度抽象的信息系统核心思想(数据模型)的体现。
因为:主键是实体的高度抽象,主键和外键对,表示实体之间的连接。
3.基本表的属性
基表不同于中间表和临时表,因为它有以下四个特点:
原子性。基表中的字段没有分解。
原始性。基表中的记录是原始数据(底层数据)的记录。
先验性。所有输出数据都可以从基表和代码表中的数据派生出来。
稳定。表的基本结构比较稳定,表中的记录保存时间较长。
一旦理解了基本表的性质,就可以在设计数据库时将它们与中间表和临时表区分开。