自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Oracle基本的動態(tài)Web開發(fā)的實際操作

數(shù)據(jù)庫 Oracle
下面的文章主要介紹的是Oracle基本的動態(tài)Web的開發(fā)以及其實際的應(yīng)用。如果你對其的實際操作很感興趣的話,以下的文章就可以供你瀏覽。

以下的文章主要是介紹Oracle基本的動態(tài)Web的開發(fā)以及其實際的應(yīng)用,你是否對Oracle基本的動態(tài)Web的開發(fā)以及其實際的應(yīng)用感到十分頭疼?如果是這樣子的話,以下的文章將會給你相應(yīng)的解決方案。

1、用Oracle WebServer構(gòu)建Web數(shù)據(jù)庫應(yīng)用 Oracle 8服務(wù)器是一個完善的信息管理環(huán)境。它是一個大量數(shù)據(jù)的儲藏所,并給用戶提供對這些數(shù)據(jù)的快速訪問。它能夠支持C/S結(jié)構(gòu)進行分布式處理和Web計算等。利用其服務(wù)器選件之一的WebServer,可以提供實現(xiàn)Web數(shù)據(jù)庫應(yīng)用的強大功能。

 

一般來說,實現(xiàn)Web數(shù)據(jù)庫應(yīng)用可以在WebServer端提供CGI/API等中間件來連接WebServer 和DB Server,也可以讓用戶通過Web瀏覽器把相關(guān)應(yīng)用下載到客戶端運行,在客戶端直接訪問數(shù)據(jù)庫,如Java Applet,Active X,Plug-in等。本文主要介紹利用Oracle 8 提供的PL/SQL和其功能強大的內(nèi)置程序包來編寫程序以實現(xiàn)動態(tài)的Web應(yīng)用。

屬于利用中間件開發(fā)的一種。中間件負責(zé)管理WebServer和DBServer之間的通信并提供應(yīng)用程序服務(wù),它能夠直接調(diào)用外部程序或腳本代碼來訪問數(shù)據(jù)庫,因此可以提供與數(shù)據(jù)庫相關(guān)的動態(tài)HTML頁面,或執(zhí)行用戶查詢,并將查詢結(jié)果格式化成HTML頁面再通過WebServer返回給用戶瀏覽器。其一般結(jié)構(gòu)如下所示:

 

Web瀏覽器 ←→ Internet ←→ Web Server ←→ CGI/API ←→ Oracle DB Server

 

2、PL/SQL

 

Oracle從其版本6開始支持一種過程處理語言PL/SQL,并將其作為所有Oracle工具的標準編程語言,從而所有的過程組件在Oracle服務(wù)器產(chǎn)品中都能實現(xiàn)。用PL/SQL可以實現(xiàn)下述重要功能:

 

存儲過程,即存放在Oracle數(shù)據(jù)庫中的程序(或代碼段)并為你的機構(gòu)完成特定的重要工作;

 

數(shù)據(jù)庫觸發(fā)器,即存放在數(shù)據(jù)庫中的代碼,可由應(yīng)用所產(chǎn)生的事件觸發(fā);

 

程序包,即把多個過程組合在一起當(dāng)作單個程序單元的代碼存放在數(shù)據(jù)庫中。

 

其中內(nèi)置程序包是預(yù)先生成的,存儲在數(shù)據(jù)庫中,且能在PL/SQL代碼塊中調(diào)用的根據(jù)需求可以傳遞參數(shù)的程序。它可以完成把結(jié)果直接輸出到終端窗口;直接從操作系統(tǒng)文件讀寫數(shù)據(jù);執(zhí)行動態(tài)的SQL等多項功能。常用的如HTP,HTF,OWA-UTIL等。下面將通過一個動態(tài)的網(wǎng)上查詢分數(shù)的實例來說明其在動態(tài)Web中的應(yīng)用。

3、利用WebServer和PL/SQL開發(fā)動態(tài)Web實例

 

現(xiàn)有一考生成績庫需在網(wǎng)上向用戶提供查詢成績的功能。首先可考慮利用HTP程序包根據(jù)用戶輸入的考生號到數(shù)據(jù)庫中查詢相應(yīng)的信息,返回一個網(wǎng)頁。代碼如下:

 

 

  1. Create or replace procedure score_into_webpage (code_in in number)  
  2. As  
  3. cursor score_cursor is  
  4. select code,name,score  
  5. from student  
  6. where code = code_in;   
  7. Begin  
  8. Htp.htmlopen;   
  9. Htp.headopen;   
  10. Htp.title ('Student's score information');   
  11. Htp.headclose;   
  12. Htp.bodyopen (cattributes=>'bgcolor = "#80800"');   
  13. Htp.tableopen(border');   
  14. Htp.tablecaption ('Score Information','center');   
  15. Htp.tablerowopen;   
  16. Htp.tableheader (' Student Code');   
  17. Htp.tableheader (' Student Name');   
  18. Htp.tableheader (' Student Score');  

固定地顯示頁標題、標題、表頭等信息,每次調(diào)用此頁時顯示的信息是相同的

 

  1. Htp.tablerowclose;   
  2. For score_rec in score_cur  
  3. Loop 

利用游標的For循環(huán)為游標在網(wǎng)頁中產(chǎn)生一個數(shù)據(jù)行

  1. htp.tablerowopen;   
  2. htp.tabledata (score_rec.code);   
  3. htp.tabledata (score_rec.name);   
  4. htp.tabledata (score_rec.score);   
  5. htp.tablerowclose;   
  6. Endloop;   
  7. Htp.tableclose;   
  8. Htp.bodyclose;   
  9. Htp.htmlclose;   
  10. End;  

通過以上代碼,我們有了一個Oracle基本的用數(shù)據(jù)庫中的數(shù)據(jù)動態(tài)的生成一個網(wǎng)頁的方法,下面將建立一個簡單的表單。在表單中調(diào)用上述程序和接受用戶輸入的考生號碼,從而在客戶端向用戶動態(tài)地顯示從數(shù)據(jù)庫中查詢的信息。

 

  1. Create or replace procedure ScoreForm  
  2. As  
  3. Begin  
  4. Htp.headopen;   
  5. Htp.title ('Code Entry Form');   
  6. Htp.headclose;   
  7. Htp.bodyopen;   
  8. Htp.header (2,'Score Information Code Form');   
  9. Htp.p ('  
  10. ');   
  11. Htp.formopen ('Score_into_webpage',cmethod=>'GET');  

打開ScoreForm表單。缺省情況下Score_into_webpage PL/SQL過程用GET方法調(diào)用。GET方法在URL里顯示傳遞的參數(shù)。

 

  1. Htp.tableopen ('border');   
  2. Htp.tablerowopen;   
  3. Htp.tabledata ('Enter Student Code');   
  4. Htp.tabledata (htf.formtext ('code_in',5,5));  

用一個文本框提示用戶輸入考號。文本框的名字必須與調(diào)用過程里的輸入?yún)?shù)相同

  1. Htp.tablerowclose;   
  2. Htp.tablerowopen;   
  3. Htp.tablerowclose;   
  4. Htp.tablerowopen;   
  5. Htp.tabledata (htf.formSubmit);   
  6. Htp.tabledata (htf.formReset);   
  7. Htp.tablerowclose;   
  8. Htp.formclose;   
  9. Htp.bodyclose;   
  10. Htp.htmlclose;   
  11. End;  

 

上述過程在客戶端被調(diào)用后產(chǎn)生的HTML即可顯示一動態(tài)表單接受用戶輸入的考號,然后傳遞給調(diào)用的過程score_into_webpage,從而到Oracle DBServer中查詢出所需的數(shù)據(jù),再通過該過程動態(tài)生成的HTML在Web瀏覽器中顯示出來。

 

4、 結(jié)束語

 

作為一個大型數(shù)據(jù)庫服務(wù)器,Oracle提供了一個面向網(wǎng)絡(luò)的開發(fā)工具、應(yīng)用服務(wù)器和數(shù)據(jù)庫服務(wù)器的綜合平臺。本文利用其標準PL/SQL和內(nèi)置程序包并結(jié)合WebServer討論了Oracle基本的動態(tài)Web的開發(fā)和應(yīng)用。

 

 

文章出自:http://database.csdn.net/page/5803d3fc-8b4d-4447-93af-ca833c5165e6

 【編輯推薦】

  1. Oracle 10g數(shù)據(jù)庫的相關(guān)內(nèi)容描述
  2. Oracle數(shù)據(jù)庫的異構(gòu)服務(wù)原理描述
  3. Oracle細粒度的訪問控制的基本工作方式
  4. 探討Oracle中rownum的用法
  5. Oracle屏蔽英文提示信息的2個好辦法

 

責(zé)任編輯:佚名 來源: csdn
相關(guān)推薦

2010-04-07 13:02:14

Oracle 存儲過程

2010-03-31 16:11:00

Oracle啟動

2010-04-01 13:39:43

Oracle Name

2010-04-14 17:06:41

Oracle安裝路徑

2010-04-16 13:59:40

Oracle數(shù)據(jù)

2010-04-01 14:06:13

Oracle Name

2010-04-20 11:06:33

Oracle索引

2010-05-10 10:19:28

Oracle實戰(zhàn)RMA

2010-04-01 16:06:08

Oracle修改表ow

2010-04-14 09:33:58

Oracle Spat

2010-04-06 08:58:27

Oracle job

2010-04-02 15:53:36

Oracle綁定變量

2010-03-29 15:57:07

Oracle exp備

2010-04-12 14:44:06

Oracle Impd

2010-04-02 13:34:33

Oracle DBA

2010-07-16 11:10:52

SQL server

2010-04-12 13:05:56

Oracle軟件

2010-04-02 18:01:39

Oracle清理

2010-05-07 12:19:38

Oracle刪除用戶表

2010-04-15 13:51:06

Oracle EBS
點贊
收藏

51CTO技術(shù)棧公眾號