Oracleѧϰ±Ê¼ÇÖ®´æ´¢¹ý³ÌÓ뺯Êý
PL/SQLÊǶÔOracleÊý¾Ý¿â½øÐвÙ×÷µÄÒ»ÖÖ¹ý³ÌÐÔ±à³ÌÓïÑÔ£¬Ëü¿ÉÒÔÔÚSQL * plusÖÐÖ´ÐУ¬Ò²¿ÉÒÔǶÈëµ½JAVA»òÕßC++ÖС£Æä»ù±¾×é³ÉΪ£º
DECLARE
...
BEGIN
...
EXCEPTION
...
END
¿ÉÓÃÀ´½«¶ÔÊý¾Ý¿âµÄ¸÷ÖÖ²Ù×÷·âװΪһ¸ö´úÂë¿é£¬ÎªÁ˼ÓÇ¿¿ÉÖØÓÃÐÔ£¬»¹¿É½«Öظ´ÐÔ´úÂëд³Éº¯ÊýÓë´æ´¢¹ý³Ì£¬ÓòÎÊý±íʾ±ä»¯µÄ²¿·Ö¡£
º¯ÊýÓë´æ´¢¹ý³ÌµÄÇø±ðÊÇ£¬º¯Êý·µ»ØÒ»¸öÖµ£¬¶ø´æ´¢¹ý³ÌûÓзµ»ØÖµ£¬²»¹ý´æ´¢¹ý³ÌÒ²¿Éͨ¹ýÖ¸¶¨²ÎÊýµÄIN|OUTÐÎʽÀ´´ïµ½½«´¦Àí½á¹û¶Á³öÀ´µÄÄ¿µÄ¡£
1.´æ´¢¹ý³Ì´´½¨Ê¾Àý£º
CREATE OR REPLACE PROCEDURE callme(p1 number,p2 varchar2,p3 varchar2) AS
BEGIN
INSERT INTO test values(p1,p2);
END callme;
2.´æ´¢¹ý³ÌʹÓÃʾÀý£º
DECLARE
val1 number:=16;
val2 varchar2(20):='¹ý³Ì²åÈëµÄв¿ÃÅ2';
val3 varchar2(12);
BEGIN
callme(val1,val2,val3);
END;
3.º¯Êý´´½¨Ê¾Àý£º
CREATE OR REPLACE FUNCTION CountRows(p1 number) RETURN NUMBER AS
v_number NUMBER;
BEGIN
SELECT count(*) INTO v_number from test WHERE id > p1;
RETURN v_number;
END;
4.º¯Êýµ÷ÓÃʾÀý£º
set serveroutput on /*Ö»ÓÐÉèÖÃÁËÕâÐУ¬²Å»áÏÔʾÊä³ö½á¹û*/
DECLARE
v_number NUMBER;
p_minid NUMBER;
BEGIN
p_minid:=0;
v_number:=CountRows(p_minid);
DBMS_OUTPUT.PUT_LINE('²¿ÃźŴóÓÚ'||p_minid||'µÄ²¿ÃÅÓÐ'||v_number||'¸ö');
END;
Ïà¹ØÎĵµ£º
BLOBµÄº¬Òå¡¡¡¡
BLOB (binary large object)£¬¶þ½øÖÆ´ó¶ÔÏó£¬ÊÇÒ»¸ö¿ÉÒÔ´æ´¢¶þ½øÖÆÎļþµÄÈÝÆ÷¡£
¡¡¡¡ÔÚ¼ÆËã»úÖУ¬BLOB³£³£ÊÇÊý¾Ý¿âÖÐÓÃÀ´´æ´¢¶þ½øÖÆÎļþµÄ×Ö¶ÎÀàÐÍ¡£
¡¡¡¡BLOBÊÇÒ»¸ö´óÎļþ£¬µäÐ͵ÄBLOBÊÇÒ»ÕÅͼƬ»òÒ»¸öÉùÒôÎļþ£¬ÓÉÓÚËüÃǵijߴ磬±ØÐëʹÓÃÌØÊâµÄ·½Ê½À´´¦Àí£¨ÀýÈ磺ÉÏ´«¡ ......
±¸·ÝµÄ·½·¨
ORACLEÊý¾Ý¿âÓÐÈýÖÖ±ê×¼µÄ±¸·Ý¡£µ¼³ö/µ¼Èë(EXPORT/IMPORT) ¡¢À䱸·Ý¡¢Èȱ¸·Ý¡£
µ¼³ö±¸·ÝÊÇÒ»ÖÖÂß¼±¸·Ý£¬ÕâÖÖ·½·¨°üÀ¨¶ÁȡһϵÁеÄÊý¾Ý¿âÈÕÖ¾£¬²¢Ð´ÈëÎļþÖУ¬ÕâЩÈÕÖ¾µÄ¶ÁÈ¡ÓëÆäËù´¦Î»ÖÃÎ޹ء£
À䱸·ÝºÍÈȱ¸·ÝÊÇÎïÀí±¸·Ý(Ò²³ÆµÍ¼¶±¸·Ý)£¬ËüÉæ¼°µ½ ......
OracleÊý¾Ý¿âÖ»ÊÇһЩÎļþ×é³É£¬OracleʵÀýÊÇÖ¸ÓÐ×Ô¼ºµÄϵͳȫ¾ÖÇøºÍÏà¹ØÊý¾Ý¿âÎļþµÄOracle·þÎñÆ÷½ø³Ì¼¯¡£ÐÂ×°µÄOracleÊý¾Ý¿â¹ÜÀíϵͳÓÐÒ»¸öԤװµÄÊý¾Ý¿â£¨Í¨³£½ÐORCL£©£¬Í¬Ê±»áÆô¶¯Ò»¸öʵÀý£¬ÒÔºóµÄÊý¾Ý¿âÁ¬½Ó£¬¶¼Ä¬ÈÏÊÇͨ¹ýÕâ¸öʵÀýÁ¬½Óµ½¸ÃÊý¾Ý¿â¡£
¿ÉÒÔн¨Êý¾Ý¿â£¬ ......
dc-test2<oracle>sqlplus /nolog
SQL*Plus: Release 10.2.0.4.0 - Production on Thu Feb 25 19:23:35 2010
Copyright (c) 1982, 2007, Oracle. All Rights Reserved.
SQL> desc v$datafile;
SP2-0640: Not connected
SP2-0641: "DESCRIBE" requires connection to server
SQL> conn / a ......
oracleÊý¾Ý¿âµÄµ¼ÈëÓëµ¼³öÊÇ×öΪһÃûʵʩ¹¤³Ìʦ»òά»¤¹¤³Ìʦÿ¾³£Òª×öµÄ¹¤×÷¡£µ±Êý¾Ý¿â½á¹¹ÐèÒª×ö±ä»¯µÄʱºò£¬ÎÒÃÇÒ»°ãÏȽ«Êý¾Ý×ö±¸·Ý£¬´ËʱÎÒÃÇÐèҪʹÓõ½OracleµÄµ¼³ö¹¦ÄÜ¡£µ±ÎÒÃÇÔÚ×öµ¼ÈëµÄʱºò³ö´í»òÕßÎÒÃǵÄÊý¾ÝÔâµ½´íÎóɾ³ýµÄʱºò£¬ÎÒÃÇÐèÒª»Ö¸´Êý¾Ý¿â£¬ÄÇÎÒÃÇÐèҪʹÓõ½µ¼ÈëµÄ¹¦ÄÜ¡£ÏÖÔÚÒ²Óкܶ๦ÄÜÄܹ»°ïÎÒÃÇ×öµ½ ......