网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > 数据库 > Oracle教程
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
数据库:数据库教程,数据库技巧,Oracle教程,MySQL教程,Sybase教程,Access教程,DB2教程,数据库安全,数据库文摘
本月文章推荐
.甲骨文获中国最佳IT供应链解决方.
.Oracle推出首个业界插座式SOA套件.
.如何强制使用者在第一次登入系统.
.快速解决Oracle监听器服务不能启.
.清除Oracle中无用索引 改善DML性.
.PL/SQL学习笔记(五).
.让数据库“安居”到Linux上.
.some error of the Oracle conne.
.Oracle、IBM、BEA服务器的基准测.
.Oracle 10G 最佳20位新特性:物化.
.安装Oracle后,经常使用的修改表.
.oracle里常用命令.
.对条件子句中带IN的SQL语句使用绑.
.Oracle 操作图片.
.blog的魅力,解决我一个oracle的.
.ORACEL起动方法及一般问题.
.在不安装Oracle客户端的情况下进.
.Oracle认证资料.
.在Redhat 9上安装 Oracle 817心得.
.Oracle9i初始化参数中文说明(二.

Oracle数据库中基本动态Web开发和应用

发表日期:2008-2-9


1、用Oracle WebServer构建Web数据库应用 Oracle 8服务器是一个完善的信息治理环境。它是一个大量数据的储藏所,并给用户提供对这些数据的快速访问。它能够支持C/S结构进行分布式处理和Web计算等。利用其服务器选件之一的WebServer,可以提供实现Web数据库应用的强大功能。 一般来说,实现Web数据库应用可以在WebServer端提供CGI/API等中间件来连接WebServer 和DB Server,也可以让用户通过Web浏览器把相关应用下载到客户端运行,在客户端直接访问数据库,如Java Applet,Active X,Plug-in等。本文主要介绍利用Oracle 8 提供的PL/SQL和其功能强大的内置程序包来编写程序以实现动态的Web应用。属于利用中间件开发的一种。中间件负责治理WebServer和DBServer之间的通信并提供给用程序服务,它能够直接调用外部程序或脚本代码来访问数据库,因此可以提供与数据库相关的动态Html页面,或执行用户查询,并将查询结果格式化成HTML页面再通过WebServer返回给用户浏览器。其一般结构如下所示: Web浏览器 ←→ Internet ←→ Web Server ←→ CGI/API ←→ Oracle DB Server 2、PL/SQL Oracle从其版本6开始支持一种过程处理语言PL/SQL,并将其作为所有Oracle工具的标准编程语言,从而所有的过程组件在Oracle服务器产品中都能实现。用PL/SQL可以实现下述重要功能: 存储过程,即存放在Oracle数据库中的程序(或代码段)并为你的机构完成特定的重要工作; 数据库触发器,即存放在数据库中的代码,可由应用所产生的事件触发; 程序包,即把多个过程组合在一起当作单个程序单元的代码存放在数据库中。 其中内置程序包是预先生成的,存储在数据库中,且能在PL/SQL代码块中调用的根据需求可以传递参数的程序。它可以完成把结果直接输出到终端窗口;直接从操作系统文件读写数据;执行动态的SQL等多项功能。常用的如HTP,HTF,OWA-UTIL等。下面将通过一个动态的网上查询分数的实例来说明其在动态Web中的应用。 3、利用WebServer和PL/SQL开发动态Web实例 现有一考生成绩库需在网上向用户提供查询成绩的功能。首先可考虑利用HTP程序包根据用户输入的考生号到数据库中查询相应的信息,返回一个网页。代码如下: Create or replace procedure score_into_webpage (code_in in number)

As

cursor score_cursor is

select code,name,score

from student

where code = code_in;

Begin

Htp.htmlopen;

Htp.headopen;

Htp.title ('Student's score information');

Htp.headclose;

Htp.bodyopen (cattributes=>'bgcolor = "#80800"');

Htp.tableopen(border');

Htp.tablecaption ('Score Information','center');

Htp.tablerowopen;

Htp.tableheader (' Student Code');

Htp.tableheader (' Student Name');

Htp.tableheader (' Student Score');

--固定地显示页标题、标题、表头等信息,每次调用此页时显示的信息

--是相同的

Htp.tablerowclose;

For score_rec in score_cur

Loop

--利用游标的For循环为游标在网页中产生一个数据行

htp.tablerowopen;

htp.tabledata (score_rec.code);

htp.tabledata (score_rec.name);

htp.tabledata (score_rec.score);

htp.tablerowclose;

Endloop;

Htp.tableclose;

Htp.bodyclose;

Htp.htmlclose;

End;
通过以上代码,我们有了一个基本的用数据库中的数据动态的生成一个网页的方法,下面将建立一个简单的表单。在表单中调用上述程序和接受用户输入的考生号码,从而在客户端向用户动态地显示从数据库中查询的信息。 Create or replace procedure ScoreForm

As

Begin

Htp.headopen;

Htp.title ('Code Entry Form');

Htp.headclose;

Htp.bodyopen;

Htp.header (2,'Score Information Code Form');

Htp.p ('

');

Htp.formopen ('Score_into_webpage',cmethod=>'GET');

--打开ScoreForm表单。缺省情况下Score_into_webpage PL/SQL过程用GET

--方法调用。GET方法在URL里显示传递的参数。

Htp.tableopen ('border');

Htp.tablerowopen;

Htp.tabledata ('Enter Student Code');

Htp.tabledata (htf.formtext ('code_in',5,5));

--用一个文本框提示用户输入考号。文本框的名字必须与调用过程里的输入

--参数相同。

Htp.tablerowclose;

Htp.tablerowopen;

Htp.tablerowclose;

Htp.tablerowopen;

Htp.tabledata (htf.formSubmit);

Htp.tabledata (htf.formReset);

Htp.tablerowclose;

Htp.formclose;

Htp.bodyclose;

Htp.htmlclose;

End; 上述过程在客户端被调用后产生的HTML即可显示一动态表单接受用户输入的考号,然后传递给调用的过程score_into_webpage,从而到Oracle DBServer中查询出所需的数据,再通过该过程动态生成的HTML在Web浏览器中显示出来。 4、结束语 作为一个大型数据库服务器,Oracle提供了一个面向网络的开发工具、应用服务器和数据库服务器的综合平台。本文利用其标准PL/SQL和内置程序包并结合WebServer讨论了基本的动态Web的开发和应用。
上一篇:如何用智能优化器提高Oracle的性能 人气:846
下一篇:有关Oracle数据库中并行处理技术剖析 人气:593
浏览全部Oracle教程的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐