ORACLE ±íº¯Êý
´Óoracle 9i ¿ªÊ¼£¬ÌṩÁËÒ»¸ö½Ð×ö“¹ÜµÀ»¯±íº¯Êý”µÄ¸ÅÄ¿ÉÒÔÀûÓùܵÀ»¯À´·µ»Ø±íº¯Êý¡£
µ«ÕâÖÖÀàÐ͵ĺ¯Êý£¬±ØÐë·µ»ØÒ»¸ö¼¯ºÏÀàÐÍ£¬ÇÒ±êÃ÷ pipelinedÒÔ¼°²»ÄÜ·µ»Ø¾ßÌå±äÁ¿£¬¶øÊÇÒÔÒ»¸ö¿Õ return ·µ»Ø!
Õâ¸öº¯ÊýÖУ¬Í¨¹ý pipe row () Óï¾äÀ´ËͳöÒª·µ»ØµÄ±íÖеÄÿһÐÐ
ÔÚµ÷ÓÃÕâ¸öº¯ÊýµÄʱºò£¬Í¨¹ý table() ¹Ø¼ü×ְѹܵÀÁ÷·ÂÕæÎªÒ»¸öÊý¾Ý¼¯!
¼ûÏÂÃæÊ¾Àý:
1¡¢½¨Á¢Ò»¸öÈýÁеĶÔÏó£º
create or replace type rowType_CustOrd_Line is object(order_no varchar2(12),line_no varchar2(4),rel_no varchar2(4));
2¡¢½¨Á¢table¶ÔÏó
create or replace type tabType_CustOrd_Line is table of rowType_CustOrd_Line;
3¡¢½¨Á¢°üÍ·£º
CREATE OR REPLACE PACKAGE Dj_Test_API IS
module_ CONSTANT VARCHAR2(25) := 'FNDBAS';
lu_name_ CONSTANT VARCHAR2(25) := 'DjTest';
Function Get_Customer_Order_Line(
order_no_ IN VARCHAR2
)
return tabType_CustOrd_Line pipelined;
END Dj_Test_API;
/
4¡¢½¨Á¢°üÌ壺
CREATE OR REPLACE PACKAGE BODY Dj_Test_API IS
Function Get_Customer_Order_Line(
order_no_ IN VARCHAR2
)
return tabType_CustOrd_Line pipelined as row_ rowType_CustOrd_Line;
begin
for custOrdRow in (select t.order_no, t.line_no,t.rel_no
from customer_order_line t
where t.order_no=order_no_) loop
row_ := rowType_CustOrd_Line(custOrdRow.order_no, custOrdRow.line_no,custOrdRow.rel_no);
pipe row (row_);
end loop;
return;
END Get_Customer_Order_Line;
------------------------------------------------------------------------
END Dj_Test_API;
/
5¡¢ÀûÓà table() ¹Ø¼ü×ְѹܵÀÁ÷·ÂÕæÎªÒ»¸öÊý¾Ý¼¯:
select * from table(Dj_Test_API.Get_Customer_Order_Line('M200800177'
Ïà¹ØÎĵµ£º
×÷ÕߣºÒ×ÎÄ¿¡
ÓÊÏ䣺yiwenjun@126.com
Ê×ÏÈÒª°ÑOracle µÄ¼àÌýºÍ·þÎñÁ½Ïî´ò¿ª
´ò¿ªodbcÊý¾ÝÔ´ÅäÖýçÃæ,Ñ¡ÔñϵͳDSN£¬Ìí¼Ó£¬Ñ¡ÔñOracleÇý¶¯³ÌÐò
¹Ø¼üÊÇÏÂÃæ²ÎÊýµÄÉèÖÃ
Data source name:×Ô¼ºÎª¸ÃÊý¾ÝÔ´ÃüµÄÃû
description:Ëæ±ã×Ô¼ºÃèÊöÀ²
TNS server name:ÏÂÀ²Ëµ¥ÓУ¨Èç¹ûûÓеϰ£¬¾Í×Ô¼ºÔÚnet configuration assist ......
ת×Ô£ºhttp://www.91linux.com/html/article/database/oracle/20081205/14333.html
proc oracle Á¬½ÓÊͷŲ»Á˵ÄÎÊÌâ
±ÊÕß¹«Ë¾µÄÓ¦ÓÃϵͳÿ¸ôÒ»¶Îʱ¼ä£¬oracleÁ¬½Ó¾Í´ïµ½ÉÏÏÞÁË£»»³ÒÉÊÇÓ¦ÓÃûÓÐÕýÈ·µÄÊÍ·ÅoracleÁ¬½Ó£»ËµÀ´²ÑÀ¢£¬proc¶Ï¶ÏÐøÐøµÄÓÃÁ˼¸Ä꣬¿É
ÄÜÊÇÒÔǰ¹«Ë¾µÄ´úÂëдµÃÌ«ºÃÁË£¬´ÓûÓÐÈ¥¹ØÐÄ»ù±¾µÄprocÁ¬½Ó¡¢Ê ......
1.¼ò½é
ÔÚ9i֮ǰ£¬²ÎÊýÎļþÖ»ÓÐÒ»ÖÖ£¬ËüÊÇÎı¾¸ñʽµÄ£¬³ÆÎªpfile£¬ÔÚ9i¼°ÒÔºóµÄ°æ±¾ÖУ¬ÐÂÔöÁË·þÎñÆ÷²ÎÊýÎļþ,³ÆÎªspfile,ËüÊǶþ½øÖƸñʽµÄ¡£ÕâÁ½ÖÖ²ÎÊýÎļþ¶¼ÊÇÓÃÀ´´æ´¢²Î ÊýÅäÖÃÒÔ¹©oracle¶ÁÈ¡µÄ£¬µ«Ò²Óв»Í¬µã£¬×¢ÒâÒÔϼ¸µã£º
1)pfileÊÇÎı¾Îļþ£¬spfileÊǶþ½øÖÆÎļþ£»
2) ¶ÔÓÚ²ÎÊýµÄÅäÖã¬pfile¿ÉÒÔÖ±½ÓÒÔÎı¾±à¼Æ ......
ÔÚOracleÖУº
¡¡¡¡Ë«ÒýºÅµÄ×÷ÓÃÊÇ£ºÈç¹û´´½¨¶ÔÏóµÄʱºò£¬¶ÔÏóÃû¡¢×Ö¶ÎÃû¼ÓË«ÒýºÅ£¬Ôò±íʾOracle½«ÑϸñÇø·Ö´óСд£¬·ñÔòOracl¶¼Ä¬ÈÏ´óд¡£
¡¡¡¡¶øµ¥ÒýºÅÔò±íʾ£ºÕâ¸ö¼ÓÁ˵¥ÒýºÅµÄ×Ö¶ÎÊÇÒ»¸ö×ÖÀàËÆ×Ö·û´®£¬²¢²»Çø·Ö´óСд¡£
¡¡¡¡µ¥ÒýºÅÓÃÓÚ±êʶ×Ö·ûÓëÊý×ÖµÄÇø±ð
¡¡¡¡µ±Ö¸¶¨×Ö·û´®Îı¾Ê±£¬±ØÐëÓõ¥ÒýºÅ½«×Ö·û´®Îı¾Òýס¡£
......
ORACLE SQLÐÔÄÜÓÅ»¯
ORACLE SQLÐÔÄÜÓÅ»¯ÏµÁÐ (Ò»)
1. Ñ¡ÓÃÊʺϵÄORACLEÓÅ»¯Æ÷
ORACLEµÄÓÅ»¯Æ÷¹²ÓÐ3ÖÖ:
a. RULE (»ùÓÚ¹æÔò) b. COST (»ùÓڳɱ¾) c. CHOOSE (Ñ¡ÔñÐÔ)
ÉèÖÃȱʡµÄÓÅ»¯Æ÷,¿ÉÒÔͨ¹ý¶Ôinit.oraÎļþÖÐOPTIMIZER_MODE²ÎÊýµÄ¸÷ÖÖÉùÃ÷,ÈçRULE,COST,CHOOSE,ALL_ROWS,FIRST_ROWS . Ä㵱ȻҲÔÚSQ ......