数据库操作语言大概可以分为三类:SQL、SQL专用语言、高级语言(Java、C)。
SQL就不多说了,目前SQL的版本已经到了SQL3(SQL99)。主流的数据库厂商都支持SQL99核心标准。SQL99增加了一些新的高级特性:对象的支持、OLAP的支持、增强了完整性管理和动态数据库特征、放宽了对可更新视图的限制、多媒体的支持等等。
SQL专用语言通常是指数据库厂商自行研发的基于过程的SQL语言,所以没有统一的标准。这些SQL专用语言广泛应用于存储过程、触发器、函数、脚本等的编写。主要的SQL专用语言有:PL/SQL(Oracle)、Transact-SQL(SQL Server)、PL/PGSQL(PostgreSQL)。数据库专用语言有一定的缺陷。第一,它们的功能/性能与成熟的高级语言(C、Java)有差距,例如缺乏操作系统底层接口,运行速度不快。(这里所说的运行速度不快不是说他们对数据库的访问不快,而是指他们作为程序设计语言本身运行速度不快;就像我们通常所说的C没有汇编快一样。当然这也是相对而言。专用的SQL没有C快,但是也没有Java那么慢,毕竟Java还需要一个VM。)不能直接访问OS的文件系统就是缺乏OS底层接口的最重要的一点,当然还有缺乏多线程的支持等等。第二,学习这些语言增加了开发人员的负担。Fortunately, there are many advanced programming languages supported by the DBMS venders.
被给数据库厂商支持的高级语言有很多,而且不尽相同。目前来看,支持Java的数据库厂商比较多。由于Java是Internet和e-commerce的标准,所以数据库与Java的结合是未来的主流趋势。数据库与Java的结合产生了几个相关的利用Java来访问数据库的技术,包括有:JDBC、SQLJ、Java存储过程、触发器和函数、EJB等等。
JDBC目前已经发展到3.0的版本,Sun发布的标准SQL支持都能支持JDBC1.0的特性。JDBC规范中2.0和3.0的特性往往需要数据库厂商的支持。JDBC是最简单的访问数据库的方式,也是最常用的方式。关于JDBC以后有机会我会专门撰文,^_^所以在此不多说。
SQLJ是一种可以在Java语言中内嵌SQL语句的方式来访问数据库的技术。在Java以前,很多数据库厂商都提供了在C语言里面内嵌SQL语言的特性。SQLJ可以使Java代码轻易地嵌入SQL语句,与数据库交互。
EJB这个议题放在这里实在是太大,所以一带而过。请另请高明。^_^
最后我们来说说Java存储过程。在Oracle中可以直接将Java语言编写的程序编译到数据库中,作为procedures、functions或者trigger来供外部调用。当然其他的数据库厂商也几乎都能支持这样的访问方式。这种方式的好处很明显:编程容易、能够充分利用OS的接口、方便程序的移植、访问DB这部分代码能够得到重用。
用Java开发Oracle存储过程的基本步骤如下:
用IDE开发Java源代码 -> 编译和加载源代码 -> 创建数据库调用说明 -> 调用Java存储过程
加载源代码:
javaload -user username/password@sid JavaClassFileName.class
创建数据库调用说明:
create or replace procedure procedure_name
as language java
name 'ClassName.methodName()';
调用Java存储过程的方式很多,最简单的调用方式就是在SQL Plus里面直接执行call命令:
call procedure_name();
Java存储过程还可以在外部的Java程序中调用和在PL/SQL存储过程中调用。
分享到:
相关推荐
适合sqlserver数据库初学者,实验二数据库操作语言源码
数据库操作语言SQL文档数据库操作语言SQL文档数据库操作语言SQL文档;
数据库工程师 第8章 关系数据库操作语言SQL.doc 学习资料 复习资料 教学资源
SQL语言.ppt,sql,数据库比较详细,挺不错
关系数据库标准语言SQL关系数据库标准语言SQL关系数据库标准语言SQL关系数据库标准语言SQL
SQL语句大全。常用。oracle阿独立法扩大;·的阿康·打客服发发发发发发发发的·阿飞咖啡
PHP语言与数据库操作.ppt
2)DML(Data Manipulation Language)数据库操作语言 用来对数据库中表的数据进行增删改。关键字:insert, delete, update 等。 3)DQL(Data Query Language)数据库查询语言 用来查询数据库中表的记录(数据)。...
sql语言,数据库的查,删,改,高级查找,视图创建,表的创建,数据库的创建
MySQL服务器与数据库的连接 MySQL数据库与数据表结构的维护 MySQL数据表记录维护 PHP与MySQL服务器数据交换技术 在服务器端使用PHP程序接收来自网页表单提交的数据,并对其进行数据维护,包括将数据保存到MySQL数据...
E语言操作SQL数据库实例,包含常用的数据库操作方法,同时提供可视化操作。
PHP语言与数据库操作.pdf
易语言数据库操作实例源码,数据库操作实例,产品,表头
windows 关于qt的数据库操作封装类 以及用例: SQLite,是一款轻型的数据库,是遵守ACID的关系型数据库管理系统,它包含在一个相对小的C库中。它的功能特点有: 1. ACID事务 2. 零配置 – 无需安装和管理配置 3....
一.实验目的 数据库系统课程设计是为了配合...使用的数据库操作语言是java。将数据库操作SQL语言嵌入java语句中完成数据库各项增删改查等操作。同时用户操作界面也是使用java实现。Java加载MySQL的驱动,实现利用ja
本课件主要讲解数据库操作的基础,关系数据库 SQL语言
满足初学者的要求,基本的sql语言,阐述基本操作!
使用SQL语言进行数据库操作,主要是通过SQL语句进行数据表的读写
从回顾数据库的发展历程开始,简单介绍了数据库的分类和操作方式,并对数据库操作语言SQL进行了详细介绍。 第4~11章按照软件工程的应用步骤阐述了数据库系统的开发过程和技巧。各个数据库应用案例如下: ● 客户...
《SQL语言与数据库操作技术大全基于SQL Server实现》.(马军,李玉林).pdf