Ò׽ؽØͼÈí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

oracleÁÙʱ±í

˵Ã÷:ÏÂÎÄÖеÄһЩ˵Ã÷ºÍʾÀý´úÂëÕª×ÔCSDN,Ë¡²»Ò»Ò»Ö¸Ã÷³ö´¦,ÔÚ´ËÒ»²¢¶ÔÏà¹Ø×÷Õß±íʾ¸Ðл!
¡¡¡¡1 Óï·¨
¡¡¡¡ÔÚOracleÖУ¬¿ÉÒÔ´´½¨ÒÔÏÂÁ½ÖÖÁÙʱ±í£º
¡¡¡¡1) »á»°ÌØÓеÄÁÙʱ±í
¡¡¡¡CREATE GLOBAL TEMPORARY ( )
¡¡¡¡ON COMMIT PRESERVE ROWS£»
¡¡¡¡2) ÊÂÎñÌØÓеÄÁÙʱ±í
¡¡¡¡CREATE GLOBAL TEMPORARY ( )
¡¡¡¡ON COMMIT DELETE ROWS£»
¡¡¡¡CREATE GLOBAL TEMPORARY TABLE MyTempTable
¡¡¡¡Ëù½¨µÄÁÙʱ±íËäÈ»ÊÇ´æÔڵģ¬µ«ÊÇÈç¹ûinsert Ò»Ìõ¼Ç¼ȻºóÓñðµÄÁ¬½ÓµÇÉÏÈ¥select£¬¼Ç¼Êǿյġ£¡¡¡¡
¡¡¡¡--ON COMMIT DELETE ROWS ˵Ã÷ÁÙʱ±íÊÇÊÂÎñÖ¸¶¨£¬Ã¿´ÎÌá½»ºóORACLE½«½Ø¶Ï±í£¨É¾³ýÈ«²¿ÐУ©
¡¡¡¡--ON COMMIT PRESERVE ROWS ˵Ã÷ÁÙʱ±íÊǻỰָ¶¨£¬µ±ÖжϻỰʱORACLE½«½Ø¶Ï±í¡£¡¡¡¡
¡¡¡¡2 ¶¯Ì¬´´½¨
¡¡¡¡create or replace procedure pro_temp(v_col1 varchar2,v_col2 varchar2) as
¡¡¡¡v_num number;
¡¡¡¡begin
¡¡¡¡select count(*) into v_num from user_tables where table_name='T_TEMP';¡¡¡¡
¡¡¡¡--create temporary table
¡¡¡¡if v_num<1 then
¡¡¡¡execute immediate 'CREATE GLOBAL TEMPORARY TABLE T_TEMP (
¡¡¡¡COL1 VARCHAR2(10),
¡¡¡¡COL2 VARCHAR2(10)
¡¡¡¡) ON COMMIT delete ROWS';
¡¡¡¡end if;¡¡¡¡
¡¡¡¡--insert data
¡¡¡¡execute immediate 'insert into t_temp values('''¡¡¡¡v_col1¡¡¡¡''','''¡¡¡¡v_col2¡¡¡¡''')';¡¡¡¡
¡¡¡¡execute immediate 'select col1 from t_temp' into v_num;
¡¡¡¡dbms_output.put_line(v_num);
¡¡¡¡execute immediate 'delete from t_temp';
¡¡¡¡commit;
¡¡¡¡execute immediate 'drop table t_temp';
¡¡¡¡end pro_temp;¡¡¡¡
¡¡¡¡²âÊÔ:¡¡¡¡
¡¡¡¡15:23:54 SQL> set serveroutput on
¡¡¡¡15:24:01 SQL> exec pro_temp('11','22');
¡¡¡¡11¡¡¡¡
¡¡¡¡PL/SQL ¹ý³ÌÒѳɹ¦Íê³É¡£¡¡¡¡
¡¡¡¡ÒÑÓÃʱ¼ä: 00: 00: 00.79
¡¡¡¡15:24:08 SQL> desc t_temp;
¡¡¡¡ERROR£º
¡¡¡¡ORA-04043: ¶ÔÏó t_temp ²»´æÔÚ¡¡¡¡
¡¡¡¡3 ÌØÐÔºÍÐÔÄÜ(ÓëÆÕͨ±íºÍÊÓͼµÄ±È½Ï)
¡¡¡¡ ÁÙʱ±íÖ»ÔÚµ±Ç°Á¬½ÓÄÚÓÐЧ
¡¡¡¡ÁÙʱ±í²»½¨Á¢Ë÷Òý,ËùÒÔÈç¹ûÊý¾ÝÁ¿±È½Ï´ó»ò½øÐжà´Î²éѯʱ,²»ÍƼöʹÓÃ
¡¡¡¡Êý¾Ý´¦Àí±È½Ï¸´ÔÓµÄʱºòʱ±í¿ì,·´Ö®ÊÓͼ¿ìµã
¡¡¡¡ÔÚ½ö½ö²éѯÊý¾ÝµÄʱºò½¨ÒéÓÃÓαê: open cursor for 'sql clause';


Ïà¹ØÎĵµ£º

Oracle´´½¨±í¿Õ¼ä¡¢´´½¨Óû§ÒÔ¼°ÊÚȨ¡¢²é¿´È¨ÏÞ

´´½¨ÁÙʱ±í¿Õ¼ä
CREATE   TEMPORARY  TABLESPACE test_temp
TEMPFILE  ' C:\oracle\product\10.1.0\oradata\orcl\test_temp01.dbf '
SIZE 32M
AUTOEXTEND  ON
NEXT  32M MAXSIZE 2048M
EXTENT MANAGEMENT LOCAL;
´´½¨Óû§±í¿Õ¼ä
CREATE  TABLESPACE test_data
LOGGING
DATAFI ......

[轉]oracle ·Ö頁

·ÖÒ³²éѯ¸ñʽ£º
SELECT * from
(
SELECT A.*, ROWNUM RN
from (SELECT * from TABLE_NAME) A
WHERE ROWNUM <= 40
)
WHERE RN >= 21
ÆäÖÐ×îÄÚ²ãµÄ²éѯSELECT * from TABLE_NAME±íʾ²»½øÐз­Ò³µÄԭʼ²éѯÓï¾ä¡£ROWNUM <= 40ºÍRN >= 21¿ØÖÆ·ÖÒ³²éѯµÄÿҳµÄ·¶Î§¡£
ÉÏÃæ¸ø³öµÄÕâ¸ö·ÖÒ³²éѯÓï¾ä£¬ÔÚ´ó¶à ......

oracleÈÕÆÚʱ¼äº¯Êý´óÈ«

TO_DATE¸ñʽ(ÒÔʱ¼ä:2007-11-02   13:45:25ΪÀý)
  
        Year:     
        yy two digits Á½Î»Äê               ......

Àí½âoracleÖÐÁ¬½ÓºÍ»á»°

Àí½âoracleÖÐÁ¬½ÓºÍ»á»° 1. ¸ÅÄͬ£º¸ÅÄͬ£º
Á¬½ÓÊÇÖ¸ÎïÀíµÄÍøÂçÁ¬½Ó¡£
ÔÚÒѽ¨Á¢µÄÁ¬½ÓÉÏ£¬½¨Á¢¿Í»§¶ËÓëoracleµÄ»á»°£¬ÒÔºó¿Í»§¶ËÓëoracleµÄ½»»¥¶¼ÔÚÒ»¸ö»á»°»·¾³ÖнøÐС£
2. ¹ØϵÊǶà¶Ô¶à£º
Ò»¸öÁ¬½ÓÉÏ¿ÉÒÔ½¨Á¢0¸ö£¬1¸ö£¬2¸ö£¬¶à¸ö»á»°¡£
OracleÔÊÐí´æÔÚÕâÑùµÄ»á»°£¬¾ÍÊÇʧȥÁËÎïÀíÁ¬½ÓµÄ»á»°¡£
3. ¸ÅÄîÓ¦Ó㺸 ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØͼ | ¸ÓICP±¸09004571ºÅ