版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、精品资料推荐快速建横Oracle系周直鹰用程式系统-使用OraclePL/SQLWeb彝工具沈玉升阈立中典大孥言十算檄及瓷家源罔路中心台中市402阈光路250虢(04-22840306樽724)E-Mail:.tw所言胃Oracle用程式是指用Oracle工具程式存取Oracle资料的女周108用程式。目前我伸号敕常见的ASPPHPJSP等都有提供资料101接支援。但封以Oracle资料基磁所H彝的黜内各I®瓷轩I系统而言,逐撵典资料Jf密切配合的Oracle彝工具,更能有效率的彝挥资料资料言十算典女周站存取濯I霓的瓷制I展垣速度。本文招略述逐撵用PL/S
2、QLiTIHlHHJOg用系统的考量黑占、OracleWebJ#用程式的新行械制、瓷料Jt伺服端的PL/SQLWebToolkit曾介、WEB/用程式伺服端必须鼓:定的DAD(DatabaseAccessDescriptor)琪境段:定以及手:BPL/SQL鹰用程式的H彝流程等。用一他鹰用例撷取片段,在WIN/NT平台上示靶,看完本章,即使您是(0008用程式新手,也可易著手建情您的系统了。一、悬何避撵用PL/SQLHSHHK?目前Oracle提供的工具有JavaServlet、PL/SQLWebToolkit、Designer>Portal或使用Developer的Forms和Repo
3、rts等五槿基本方式来H彝ffOT程式。上述H彝工具各有使用上的便缺黑占,您必i(根除的鹰用系统需求来避撵.以下襄他因素可供在彝工具的退撵押量上参考:1 .使用者群JB性。2 .使用者介面的褪亲隹度。3 .系统H彝畤限。4 .H彝者封工具的熟悉度。因此若您要建情的系统使用者来至堵周除路、非寡渠使用、使用者介面只需提供资料查言旬濯I霓或的资料登金的作H(不需做到滑鼠控制等)、有H彝畤IW上的屋力、封Java不熟悉、但熟悉PL/SQL程式言吾言典基本的HTMffl真资料展琪格式等特性,那圜?使用以HTML&基磁的PL/SQLWebToolkit常作税K鹰用程式的H彝工具鹰是他不4g的决定。
4、、OracleWeb用程式的就行制一他完整的Web系统包括了客端的濯I霓器,中的web/鹰用伺服器(Applicationserver),以及彼端资料伺服器(Databaseserver)等3/W架情。其中web/鹰用伺服器端是用来典We®霓器潢通,及新行鹰用程式的鹰用程式伺服器。彳爰端资料存以HTM舄基磁,使用OraclePL/SQLWeb#装恻!函数或程序呼叫方式嘉的楹I存程式礁(StoredProcedures),适些程式不105生一系列的女周供濯I霓器St示。槿鹰用程式礁敕曾易,只要您熟悉Oracle的PL/SQL言吾言,封HTML勺瓷料格式及濯|霓器如何呈琪的视窗控制有基本
5、的熬言法,就可很1ft易上手Hweb用程式。本文靶例安装的是Oracle9iApplicationServer1.0.2/NT2000版本,安裳邂OracleHTTPServeronly卜Bl>&Oracle9iJ8用程式伺服器的主要元件,Webserver是直接典濯I霓器潢通的元件,其潢通的方法是使用HTTP(HyperTextTransportProtocol),目前Oracle新的版本都是使用襟型ApacheWebserver。在我伸号所mi的用程式未里,ApacheHTTPservr悬固定的槽案提供服矜,适些槽案包括固定的HTML®案或影像槽等。换句忘舌,您嘉的
6、HTML®案或影像槽必i(放在WetSE«端,存程式必i(放在资料Jf端。在此以PL/SQLWeb#用程式例(言青参考靶例茨;明覃元)的就行流程来曾略茨:明逋作械制:1 .常使用者要求一(0WebfiJT(«S入或黑槌一他URL帅如烟二>重面入http:shen/schair/index.html2 .HTTPserver收至Uindex.html桂有呼叫就行pls/schair的PL/SQL存程序言青求畤(Request),就曾4各造(St1求送至Apache的mod_plsql模黜。由BI三的登入系统原始礁可知,此ifiJC使用HTMLormmethod
7、接收gg数的方式符伯里繇action="/pls/schair/tedp_chk"3 .mod_plsql模黜使用包含在URL0勺鼓:定需求,由DAD(DatabaseAccessDescriptor)决定用哪他资料JtWI虢筵入彳爰HS&lg资料端的存程序。4 .接收的言青求何期&资料Jt的存程序(StoredPL/SQLProcedure)虑理,就行的结果利用PL/SQLWebToolkit的HTP套装生HTMLt件格式送出给Webserver,樽送至濯|霓器展示。三、PL/SQLWebToolkit曾介由上述K元的就行流程可知,在您叫用PL/SQLHH
8、®用程式前,WebToolkit套装软醴需先载入系统,如此您瘾的PL/SQLOOS用程式才能在资料Jf端就行。PL/SQLWebToolkit包括2大Jg:1. htp和htf套装欺耀!:用来生html襟IS格式的巾俞出结果。此套装欺耀!包含使用到的PL/SQL资料别,程序及函式呼叫等,典HTML3.2S本指令一封一封B,用来符资料端抓取的资料利用套装软生勤熊html俞出。如下左遏呼叫Procedure指令,是存在资料H端的程序程式,其就行彳爰的巾俞出结果如右遏的生html展示在濯|霓器上。呼叫Procedure生HTMLProcedureshowBeginhtp.htmlOpen;
9、htp.header(1,'Overview');htp.print('HelloWord');htp.para;htp.bold('基本余罔It展琪');htp.htmlclose;End;<HTML><H1>Overview</H1>HelloWord<p><B>基本余罔真展琪</B></HTML>2. owa套装W:字首OWA_!g的套装fd!用来虑理资料Jf伺服端典webj8用伺服端IW的http潢通。包括owa_cookie/cookie段:定,owa_
10、image/影像按翅方位操控,owa_opt_lock/资料音己金灵旗定,owa_pattern/字用搜尊,owa_sec/安全械制,owa_text/大量字用虑理,owa_util/颜耀!工具等函式或程序呼叫。以下是cookie鼓:定的存程序owa使用靶例:VARCHAR2, VARCHAR2, VARCHAR2DEFAULT 'CLOSE')procedureschair_setcookie(v_cookie_namev_cookie_valvcloseISBEGINowa_util.Mime_Header('text/html',FALSE);owa_co
11、okie.Send(v_cookie_name,v_cookie_val);IFv_close='CLOSE'THENowa_util.Http_Header_Close;ENDIF;END;您可使用以下SQL指令来列出上述套装fd1名耦,以碓ISPL/SQLWebToolkit是否安装成功:selectowner,object_namefromdba_objectswhereobject_type='PACKAGE'and(object_namelikeHT%'orobject_namelikeOWA%');四、建DA陈改勤资料相程式新行在Or
12、acleHTTPserver上送mod_plsql模黜,建一DAD(DatabaseAccessDescriptor)东己或作悬PL/SQLweb用程式呼叫资料服捌寺用哪瓶I资料虢筵入,以料端的存程序。以下是DA*耦悬schair的步骤:41口1r“4Ir修尸码:2.黑占巡:道DatabaseAccess(D卡找协物二仪,】麻电mORACLEd久r.a,rh*uj*-回*'口I%理L4口3,V'MtnaflImiE干b-ixJiXjliwcwtETiib?viWJfmmDescriptor骰:定3.黑占退:4.新增schairDAD五、手HPL/SQUg真鹰用程式常您已符使用者
13、系统琪境段定完成彳爰,接著就可撰嘉您的008用程式了。只要有一般的文善褊It器就可K始勤工。以下是ffOO勺撰嘉流程:1 .鹰用程式1S言十:以HTML&基磁的webj®用程式使用http通轩I曲定,因此在段言糕周真IW的流程畤必考f#到http逋作的特性BM制。例如http的逋作是"stateless”,server端瓢法辨fgt!求者的身分,因此必须建立系统登入械制以辨fg呼叫者的身份。目前是使用cookie存使用者SB1密礁在client端,3t在每他I被呼叫的程序程式未里作cookie检查。由於webBT的逋作模式是使用者叫用一他URL1入系统,优ffBT接
14、收资料,接著web等待使用者下连下一他黑占退按翅或巾俞入相信睛孔息,因此明碓的重出每(001的逋接流程,定羲所有的模黜功能及健遮参数是有必要的。2 .:依摞上一他步骤重出的鹰用系统流程圄,段言十HTMLBJT。常然您可用言己事本完成所有的HTML但圜端化的HTM幽耀!褊4t器(像MacromediaDreamwaver)来IS言十您的重面以生html程式礁曾更有效率。3 .樽换:>html程式礁改嘉成使用PL/SQL存程式,只需招每行的html用罩引虢'括起来,由htp.print来呼叫就完成了。如下例:htp.print('<table><tr>
15、<td>');htp.print('<ahref="table_qry?v_emp='|v_empl|'"'|'target="main_frame">'|'');htp.print('Table查痴H</a>');htp.print('</td><td>');htp.print('<ahref="table_logout?v_emp='|v_emp11ntar
16、get="_top">登出系统</a>');htp.print('</td></tr></table>');4 .加入程式:>pl/sql相的资料言十算指令嵌入程式中六、加例液:明以下webj#用程式靶例是用来查!«料»相table系统文件余已金冤在此撷取相信繇周及程式礁片段来明使用PL/SQL1T成的鹰用程式H彝步骤。1.入口区周立乎叫,接收虢密礁:<M二>111面入http:/shen/schair/茨:明:内定值是呼叫webserver端的<isu
17、ites目金泉Xapacheapachehtdocsschairindex.html会罔JC其中shen是HTTPserver的主檄名耦,schair是在htdoc文件根目金录下(由http.conf所定羲的DocumentRoot"c:isuitesApacheApachehtdocs")所建的鹰用程式存放目金录,除了PL/SQL存程序存放在资料,其绘的web用程式槽案均放在此目金录下。2.index.htmlifiJC原始不Mffi作:<BI三>BI二的原始旗I内容茨;明:1.<bodybackground="rose.bmp"&g
18、t;使用相H寸位址呼叫rose.bmp鼠因此此槽必放在htdocs文件根目金录下的schair子目金泉才能被呼叫到。2.<formmethod="post"action="/pls/schair/tedp_chk”>此行叙述11r招建哪唯!送到资料端,aDA的定羲的oracle使用者schair登入资料去就行tedp_chk程序。其中/pls是由httpd.conf呼叫plsql.conf所定羲的虚85路彳至,由mod-plsql用来呼叫相隘I的PL/SQL工具虑理。3 .资料端的PL/SQLlit存程序:procedureTEDP_CHK(v_emp
19、lvarchar2,v_passvarchar2)ISbeginschair_setcookie('cookie_pass',upper(v_pass),'NOCLOSE');schair_setcookie('cookie_empl',upper(v_empl),'NOCLOSE');owa_util.Redirect_Url(owa_util.Get_Owa_Service_Path|'table_frame');end;<BIBI>PL/SQL存程序程式.茨;明:由index.html所接U的v_
20、empl燹数傅给tedp.chk程序去做client的幔虢及密礁cookie段:定。接著owa_util.Redirect_Url呼叫资料端就行table_frame程序,1g程序呼叫使用目金泉供耕4 .黑占逗资料巾俞入:<8|五>11数11取明:1.在重面上方黑占退TABLE查言旬及雉即出垣如圄五0(,等候巾俞入建数。拉退鹰用系统楠位逐撵scahir,字用巾俞入入'shfcode',再按就行查H。2.以下程序片段是此ffOO勺参数健遮,接收,及就行等内容:PROCEDURETABLE_QRY(v_empvarchar2defaultnull)ISselnameva
21、rchar2(12);PL/SQL梦嗷即!v_selnovarchar2(7);v_datevarchar2(8);v_date1varchar2(8);p_targetvarchar2(1);p_sysvarchar2(10);p_tabvarchar2(20);cookie_statusvarchar2(1)default'N'-系统代礁:p_syscursorc2isselect'*'sys_code,'全部'sys_namefromdualunionselectsys_code,sys_code|''|nvl(rtrim(sys_name),'?')sys_namefromtabowner;begin.htp.FormSelectOpen('p_sys',糜用系统:');FORc2_recINc2LOOPhtp.FormSelectOption(c2_rec.sys_name,cattributes=
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026北京大学天然药物及仿生药物全国重点实验室智慧药物平台实验技术岗位招聘备考题库带答案详解(满分必刷)
- 2026中共衢州市委党校引进高层次紧缺人才2人备考题库(浙江)带答案详解(综合题)
- 2026贵州黔东南州三穗县招聘社会化服务市场监管协管人员2人备考题库带答案详解(基础题)
- 2026江西赣西科技职业学院人才招聘备考题库附答案详解(黄金题型)
- 基于深度学习的手语识别方法研究和验证
- 特色化教学设计案例分享
- 幼儿园中班教学计划范例
- 企业知识产权保护制度设计
- 2025年物流运输管理实务试题和答案解析
- 初中物理八年级下册《机械效率》跨学科项目式学习教学设计
- 2026春统编版(新教材)小学道德与法治二年级下册(全册)各单元知识点复习课件
- 万豪酒店礼仪规范
- 按劳分配为主体、多种分配方式并存课件-2025-2026学年统编版道德与法治八年级下册
- 2026年成都文职辅警笔试题库及1套参考答案
- 【量子位智库】2025年度具身智能创业投融资全景报告
- 广州市财政投资信息化项目(运行维护类)方案编写指南
- 城市内涝风险评估方案
- 江西省国有资本运营控股集团有限公司2026年第一批批次公开招聘参考考试试题附答案解析
- 2026年心理咨询师考试题库300道附参考答案(综合题)
- 承包土豆合同范本
- 《互联网产品开发》 课件全套 夏名首 项目1-6 互联网产品开发认知 - 互联网产品评估与优化
评论
0/150
提交评论