PL/SQL ¤ÎÁÒ¸Ë

SQL ¤Î³èÍÑÎã¤È PL/SQL ¥×¥í¥°¥é¥à¤ØÁȤ߹þ¤à¶¦ÄÌ´Ø¿ô¥é¥¤¥Ö¥é¥ê
¤Á¤ê¤âÀѤâ¤ì¤Ð»³¡£¤¢¤Ã¤¿¤éÊØÍø¡¢¤Ê¤¯¤Æ¤âÂ礷¤Æº¤¤é¤Ê¤¤¡£·ä´Ö¤òËä¤á¤ë¥Ë¥Ã¥Á¤Ê¥¹¥È¥¢¡¼¥É¥×¥í¥°¥é¥à
¥Ñ¥Ã¥±¡¼¥¸²½¤â¤·¤Æ¤Ê¤¤¤Î¤Ç¡¢¤´¤ß¤Î»³¡Ä¤«¤â¤·¤ì¤Þ¤»¤ó¡£

¢¨ ¤³¤Î¥Ú¡¼¥¸¤Ï¤¢¤Þ¤ê¤Ë»¨Â¿¤Ê¤Î¤Ç̵¤¯¤¹Êý¸þ¤ÇÅØÎϤ·¤Æ¤¤¤Þ¤¹¡£

¿ôÃÍ´Ø¿ô (ÀÚ¤ê¾å¤²¡¢Ã¼¿ô¡¢16¿Ê¿ô¡¢±ß¼þΨ)

TRUNC_MOD ¥Õ¥¡¥ó¥¯¥·¥ç¥ó(»ØÄê·å°Ê²¼¤Îü¿ô¤ò¼è¤ê½Ð¤¹)

  • »ØÄê·å¤Îü¿ôÉô¤ò¼è¤ê½Ð¤¹¡£(¥Ç¥Õ¥©¥ë¥È¤Ï¿ôÃͤξ®¿ôÉô¤ò¼è¤ê½Ð¤¹)
CREATE OR REPLACE FUNCTION RIVUS.TRUNC_MOD(P_NUM IN NUMBER, P_PLACE IN INTEGER := 0)
RETURN NUMBER
IS
BEGIN
  RETURN MOD(P_NUM, 10**P_PLACE);
END;
/

HEXTODEC ¥Õ¥¡¥ó¥¯¥·¥ç¥ó(16¿Ê¿ô¢ª10¿Ê¿ôÊÑ´¹)

16¿Ê¿ô ¢Î 10¿Ê¿ô ÊÑ´¹´Ø¿ô ¢Í 10¿Ê¿ô¡¢16¿Ê¿ô ÊÑ´¹

PI ¥Õ¥¡¥ó¥¯¥·¥ç¥ó(±ß¼þΨ)

  • PI (½½Ê¬¤ÊÀºÅÙ¤ò¤â¤Ä¶á»÷ÃÍ: ¥Þ¥Ë¥å¥¢¥ë¤Î»ÅÍÍ (ATAN) ¤Ç¤Ï 30 ·å¤Þ¤Ç¤ÎÀºÅÙ¤·¤«¤Ê¤¤)
    ¾ï¤Ë°ìÄê¤Î¿ôÃͤÎÌ᤹¤Î¤Ç¡¢¥­¥ã¥Ã¥·¥å¤Ë»Ä¤ë¤³¤È¤ò´üÂÔ¤·¤Æ DETERMINISTIC ¤Ë¤·¤Æ¤¤¤ë¡£
    38 ·å¤Î±ß¼þΨ¤ò»ÈÍѤ¹¤ë¾ì¹ç¤Ë¤Ï¡¢¤½¤ì¤Û¤É¤ÎÀºÅÙ¤¬ËÜÅö¤ËɬÍפ«¤É¤¦¤«¤ò¸«¶Ë¤á¤ëɬÍפ¬¤¢¤ë¤Î¤Ç¤Ï¤Ê¤¤¤«? ¤È¤¤¤¦°ÕÌ£ÉÔÌÀ¤ÊÍýͳ¤ÇÉÔÀµ³Î¤Ê·×»»¼°¤ÎÊý¤ò¥Ç¥Õ¥©¥ë¥È¤Ë¤·¤Æ¤ª¤­¤Þ¤·¤¿¡£(Ä̾ï·×»»¤Ç¤Ï 10 ·å¤Î¥³¥ó¥¹¥¿¥ó¥ÈÃͤǤ¢¤ì¤Ð½½Æóʬ¤È»×¤¤¤Þ¤¹¡£)
CREATE OR REPLACE FUNCTION RIVUS.PI
RETURN NUMBER
DETERMINISTIC
IS
    PI CONSTANT NUMBER  := 4*(4*ATAN(1/5)-ATAN(1/239));
--  PI CONSTANT NUMBER  := 3.1415926535897932384626433832795028841971;
BEGIN
	RETURN PI;
END;
/
-- ·×»»¼°¤ò»ÈÍѤ·¤¿¶á»÷Ãͤξì¹ç
-- NUMBER·¿ ¤ÎºÇÂçÀºÅÙ¤Ï 38 ·å
SELECT TAN(PI/2), TAN(PI), SIN(PI)  FROM DUAL ;
TAN(PI/2)   TAN(PI)   SIN(PI)
---------- ---------- ----------
1.6667E+37 -1.100E-37 1.1000E-37
 
-- ¥³¥ó¥¹¥¿¥ó¥È
-- PI CONSTANT NUMBER  := 3.14¡Á¤ò»ÈÍѤ¹¤ë¤È¡¢TAN(PI/2) ¤Ï¥ª¡¼¥Ð¥Õ¥í¡¼¤·¤Þ¤¹¡£
SELECT TAN(PI), SIN(PI)  FROM DUAL ;
  TAN(PI)   SIN(PI)
---------- ----------
        0          0

ʸ»ú´Ø¿ô (Ê£¿ôʸ»ú TRIM¡¢µÕ¤µÆÉ¤ß¡¢LENGTH(NULL)=0)

REVERSE_MULTIBYTE ¥Õ¥¡¥ó¥¯¥·¥ç¥ó(¥Þ¥ë¥Á¥Ð¥¤¥È¥­¥ã¥é¥¯¥¿Âбþ:µÕ¤µÆÉ¤ß)

ʸ»úÎóµÕ¤µÆÉ¤ß´Ø¿ô

  • REVERSE ¤Ï ɸ½àSQL´Ø¿ô(Èó¸ø¼° ¥·¥ó¥°¥ë¥Ð¥¤¥ÈÍÑ)
    REVERSE ¤Ï¡¢²¿¸Î¤«¥Þ¥Ë¥å¥¢¥ë¤Ë¤Ê¤¤¤¿¤á(¥Þ¥ë¥Á¥Ð¥¤¥È¥­¥ã¥é¥¯¥¿Âбþ¤¹¤ëͽÄê¤Ç¤â¤¢¤ë¤Î¤«¤Ê?)¡¢ ¤Û¤Ü´Ö°ã¤¤¤Ê¤¯¥µ¥Ý¡¼¥ÈÂоݳ°¤Î´Ø¿ô¤È»×¤ï¤ì¤ë¡£(¥×¥í¥°¥é¥ß¥ó¥°¤Ç¤Ï UTL_RAW.REVERSE ¤ò»ÈÍѤ¹¤ë¡£)
CREATE OR REPLACE FUNCTION RIVUS.REVERSE_MULTIBYTE(P_STR IN VARCHAR2)
RETURN VARCHAR2
IS
	vReverse	VARCHAR2(4000);
BEGIN
	FOR i in REVERSE 1..LENGTH(P_STR)
	LOOP
		vReverse := vReverse || SUBSTR(P_STR, i, 1);
	END LOOP;
	RETURN vReverse;
END;
/

ʸ»ú´Ø¿ô (ÆüËܸì½èÍý¡§Á´³Ñ¤ò´Þ¤àʸ»ú¡¢È¾³Ñ¥«¥Ê¤ÎÊÑ´¹)

IS_MULTIBYTE ¥Õ¥¡¥ó¥¯¥·¥ç¥ó (Á´³Ñʸ»ú:¥Þ¥ë¥Á¥Ð¥¤¥Èʸ»ú¤¬´Þ¤Þ¤ì¤ë¤«)

¸úΨ¤¬Îɤ¤¤È¤Ï¸Â¤ê¤Þ¤»¤ó¤¬¡¢¥³¥ó¥»¥×¥È¤Ï¼êÈ´¤­¤Ç¤¹¡£

CREATE OR REPLACE FUNCTION RIVUS.IS_MULTIBYTE(P_CHAR IN VARCHAR2)
RETURN PLS_INTEGER
IS
BEGIN
	IF ( P_CHAR <> CONVERT(P_CHAR, 'US7ASCII')) THEN
		RETURN 1;
	END IF;
	RETURN 0;
END;
/

³«È¯Êä½õ¥³¡¼¥É (TRUNCATE TABLE)

TRUNCATE TABLE ¥é¥Ã¥Ñ¡¼¥×¥í¥·¡¼¥¸¥ã

Ä̾糧¥­¥å¥ê¥Æ¥£¾å¤ÎÍýͳ¤«¤é¥ª¥Ö¥¸¥§¥¯¥È¤Î¥ª¡¼¥Ê¤È¥×¥í¥·¡¼¥¸¥ã¤Î¼Â¹Ô¼Ô(¥·¥¹¥Æ¥àÍøÍѼÔ)¤Ï°Û¤Ê¤ëÀ߷פò¹Ô¤Ê¤¦¡£
¤½¤Î¤¿¤á TRUNCATE TABLE ¤ò¼Â¹Ô¤µ¤»¤ë¤¿¤á¤Ë¥Þ¥Ë¥å¥¢¥ëÄ̤ê DROP ANY TABLE ¸¢¸Â¤òÉÕÍ¿¤·¤Æ¤·¤Þ¤¦¥±¡¼¥¹¤â¾¯¤Ê¤¯¤Ê¤¤¡£
¤³¤ì¤Ï¡¢Â¾¤Î¥¹¥­¡¼¥Þ¥ª¥Ö¥¸¥§¥¯¥È¤ò¼«Í³¤Ë DROP TABLE ¤Ç¤­¤ëÈó¾ï¤Ë¶¯ÎϤʸ¢¸Â¤Ç¤¢¤ë¤¿¤á¡¢¤½¤Î¸¢¸Â¤Î±Æ¶ÁÎϤϹ­ÈϰϤˤʤꡢ ¤³¤ì¤òÇÓ½ü¤·¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¥±¡¼¥¹¤¬¤¢¤ë¡£( 1 ¥¤¥ó¥¹¥¿¥ó¥¹¤Ë Ê£¿ô¤Î¥·¥¹¥Æ¥à¤È¥¹¥­¡¼¥Þ¤¬¶¦Â¸¤·¤Æ¤¤¤ë´Ä¶­¤Ê¤É )

¤½¤Î¤¿¤á¤Ë¤Ï DROP ANY TABLE(TRUNCATE TABLE) ¤Î¼Â¹Ô¤Ïµö²Ä¤»¤º¥×¥í¥·¡¼¥¸¥ã·Ðͳ¤Ç¼Â¹Ô¤µ¤»¤ë¡£
¤³¤ì¤Ç¾¯¤Ê¤¯¤È¤â¾¥·¥¹¥Æ¥à¤Î¥¹¥­¡¼¥Þ¤Ë±Æ¶Á¤¬µÚ¤Ð¤Ê¤¤¤è¤¦¤Ë¤¹¤ë¤³¤È¤¬¤Ç¤­¤ë¡£
(¼«¥·¥¹¥Æ¥à¤Î¥¹¥­¡¼¥Þ¤Ø¤Î DDL ¼Â¹Ô´Æ»ë¤Ï´ÆººÅù¤ÇÁá´üȯ¸«¤¹¤ë¤·¤«¤Ê¤¤¡£)

ÀÚ¤ê¼Î¤Æ¤Ç¤­¤ë¥Æ¡¼¥Ö¥ë¤òÀ©¸Â¤·¤Æ¤¤¤ë¤Î¤Ïµ¤µÙ¤áÄøÅ٤Ǻï½ü¤·¤Æ¤âÌäÂê¤Ï¤Ê¤¤¤¬¡¢¥¹¥­¡¼¥Þ̾¤Ë¤è¤ëÀ©¸Â¤òºï½ü¤¹¤ë¤È¸ºß²ÁÃͤ¬¤Ê¤¯¤Ê¤ë¡£ ( 'TRUNCATE TABLE RIVUS. || vTarget ) -- ¼ÐÂΤÎÉôʬ

CREATE OR REPLACE PROCEDURE RIVUS.TRUNC_TABLE(P_TABLE IN VARCHAR2)
AUTHID DEFINER
IS
	vSearch	VARCHAR2(30);
	vTarget	VARCHAR2(30);
	TYPE  TABLE_LIST_T IS TABLE OF VARCHAR2(30);
	-- TRUNCATE TABLE LIST
	TRUNCATABLE_LIST TABLE_LIST_T := TABLE_LIST_T(
		'TABLE_A', 'TABLE_B', 'TABLE_C'
	);
BEGIN
	vTarget := NULL;
	vSearch := UPPER(P_TABLE);
	FOR i IN 1..TRUNCATABLE_LIST.COUNT
	LOOP
		IF (vSearch = TRUNCATABLE_LIST(i)) THEN
			vTarget := vSearch;
			EXIT;
		END IF;
	END LOOP;
 
	IF ( vTarget IS NOT NULL) THEN
		EXECUTE IMMEDIATE 'TRUNCATE TABLE RIVUS.' || vTarget ;
	ELSE
		NULL; -- or RAISE userdef_exception;
	END IF;
END;
/


SQL Tips (Ê̤ο·µ¬¥Ú¡¼¥¸¤Ëʬ³äͽÄê)

¥Ç¡¼¥¿¤¬¤¢¤ê¤Ê¤·¤Î¥Á¥§¥Ã¥¯ (»ØÄê¾ò·ï¤Î¥Ç¡¼¥¿¤¬¤¢¤ë¤«¡¢¤Ê¤¤¤«¤À¤±¤Î³Îǧ)

  • 1 ¹Ô¼èÆÀ¤Ç¼Â¹Ô½ªÎ»¤¹¤ë¤¿¤á¤Î¹â®¤Ë¤Ê¤ë¾ì¹ç¤¬¤¢¤ë(»ÈÍѤ¹¤ë¥¤¥ó¥Ç¥Ã¥¯¥¹¤È¸¡º÷·ï¿ô¤¬Â¿¤¤¾ì¹ç)
    SELECT /*+ FIRST_ROWS(1) */ COUNT(*) FROM table_name WHERE condition
           AND ROWNUM <= 1
    ¥Ç¡¼¥¿¤¬¤¢¤ë¾ì¹ç 1 ¤Ê¤±¤ì¤Ð 0 ¤òÌ᤹(hint ¶ç¤Ï¾éŤ«¤â)
    ¥¤¥ó¥Ç¥Ã¥¯¥¹¤Î̤»ÈÍÑ¡¢¾®¤µ¤ÊÃæ´Ö¥ì¥³¡¼¥É¥»¥Ã¥È¡¢·ë²Ì¥»¥Ã¥È¤Î¾ì¹ç¤Ë¤Ï¸ú²ÌÇö¡£

°Üž

ROUNDUP ¥Õ¥¡¥ó¥¯¥·¥ç¥ó(ÀÚ¤ê¾å¤²)

¢Í ROUNDUP ´Ø¿ô

IS_DATE ¥Õ¥¡¥ó¥¯¥·¥ç¥ó (ÆüÉÕʸ»úÎó¤ÎÍ­¸úÀ­¥Á¥§¥Ã¥¯) ;

ÆüÉÕʸ»úÎó¤ò¥Á¥§¥Ã¥¯¤¹¤ë¥Õ¥¡¥ó¥¯¥·¥ç¥ó ¢Í ʸ»úÎ󤬯üÉÕ¤ËÊÑ´¹¤Ç¤­¤ë¤«¥Á¥§¥Ã¥¯¤¹¤ë

YEAR_OF_AGE ¥Õ¥¡¥ó¥¯¥·¥ç¥ó (ÃÂÀ¸Æü¤«¤éǯÎð¤ò»»½Ð)

¥·¥¹¥Æ¥àÆüÉդˤª¤±¤ëǯÎð¤ò»»½Ð¤¹¤ë¡£¢Í ÃÂÀ¸Æü¤«¤éǯÎð¤ò»»½Ð¤¹¤ë

LENGTH0 ¥Õ¥¡¥ó¥¯¥·¥ç¥ó( Ťµ0 ¤Îʸ»úÎó¤òŤµ0 ¤È¤¹¤ë LENGTH )

Ťµ0 ¤Îʸ»úÎó¤òŤµ¤ò·×¤ë ¢Í LENGTH

¥Á¥§¥Ã¥¯¥Ç¥¸¥Ã¥È(C/D:¥Á¥§¥Ã¥¯¥Ç¥£¥¸¥Ã¥È)¤Î»»½Ð (JAN¡¢ITF ¥³¡¼¥ÉÍÑ)

°ÜžºÑ ¢Í JAN ¥³¡¼¥É¤Î¥Á¥§¥Ã¥¯¥Ç¥¸¥Ã¥È¤ò·×»»¤¹¤ë

TRIM_MULTI ¥Õ¥¡¥ó¥¯¥·¥ç¥ó(Ⱦ³ÑÁ´³Ñ¡¢Ê£¿ôʸ»úÂбþ¤Î TRIM)

¢Í TRIM ´Ø¿ô

ÆüÉÕ´Ø¿ô (ÆüÉÕ¥Á¥§¥Ã¥¯¡¢Ç¯Îð¡¢Ç¯¹æ¡¢·î½é¡¢Àè½µÆüÉÕ)

NAME_OF_ERA ¥Õ¥¡¥ó¥¯¥·¥ç¥ó (»ØÄê¤ÎÆüÉÕ¤Îǯ¹æÌ¾¤ò¼èÆÀ)

¢Í TO_CHAR ´Ø¿ô¡ÊÆüÉÕ¡Ë

FIRST_DAY ¥Õ¥¡¥ó¥¯¥·¥ç¥ó (·î½é¤á¤ò¼èÆÀ)

¢Í LAST_DAY ´Ø¿ô

PREV_DAY ¥Õ¥¡¥ó¥¯¥·¥ç¥ó (Àè½µ¤Î¤¢¤ëÍËÆü¤ÎÆüÉÕ¤ò¼èÆÀ)

¢Í NEXT_DAY ´Ø¿ô

ÆüÉÕ¤ÎÊ¿¶ÑÃͤò¼èÆÀ¤¹¤ë

¢Í MEDIAN ´Ø¿ô ¤Ë°Üư

Table of Contents

  1. PL/SQL ¤ÎÁÒ¸Ë
  2. ¿ôÃÍ´Ø¿ô (ÀÚ¤ê¾å¤²¡¢Ã¼¿ô¡¢16¿Ê¿ô¡¢±ß¼þΨ)
  3. TRUNC_MOD ¥Õ¥¡¥ó¥¯¥·¥ç¥ó(»ØÄê·å°Ê²¼¤Îü¿ô¤ò¼è¤ê½Ð¤¹)
  4. HEXTODEC ¥Õ¥¡¥ó¥¯¥·¥ç¥ó(16¿Ê¿ô¢ª10¿Ê¿ôÊÑ´¹)
  5. PI ¥Õ¥¡¥ó¥¯¥·¥ç¥ó(±ß¼þΨ)
  6. ʸ»ú´Ø¿ô (Ê£¿ôʸ»ú TRIM¡¢µÕ¤µÆÉ¤ß¡¢LENGTH(NULL)=0)
  7. REVERSE_MULTIBYTE ¥Õ¥¡¥ó¥¯¥·¥ç¥ó(¥Þ¥ë¥Á¥Ð¥¤¥È¥­¥ã¥é¥¯¥¿Âбþ:µÕ¤µÆÉ¤ß)
  8. ʸ»ú´Ø¿ô (ÆüËܸì½èÍý¡§Á´³Ñ¤ò´Þ¤àʸ»ú¡¢È¾³Ñ¥«¥Ê¤ÎÊÑ´¹)
  9. IS_MULTIBYTE ¥Õ¥¡¥ó¥¯¥·¥ç¥ó (Á´³Ñʸ»ú:¥Þ¥ë¥Á¥Ð¥¤¥Èʸ»ú¤¬´Þ¤Þ¤ì¤ë¤«)
  10. ³«È¯Êä½õ¥³¡¼¥É (TRUNCATE TABLE)
  11. TRUNCATE TABLE ¥é¥Ã¥Ñ¡¼¥×¥í¥·¡¼¥¸¥ã
  12. SQL Tips (Ê̤ο·µ¬¥Ú¡¼¥¸¤Ëʬ³äͽÄê)
  13. ¥Ç¡¼¥¿¤¬¤¢¤ê¤Ê¤·¤Î¥Á¥§¥Ã¥¯ (»ØÄê¾ò·ï¤Î¥Ç¡¼¥¿¤¬¤¢¤ë¤«¡¢¤Ê¤¤¤«¤À¤±¤Î³Îǧ)
  14. °Üž
  15. ROUNDUP ¥Õ¥¡¥ó¥¯¥·¥ç¥ó(ÀÚ¤ê¾å¤²)
  16. IS_DATE ¥Õ¥¡¥ó¥¯¥·¥ç¥ó (ÆüÉÕʸ»úÎó¤ÎÍ­¸úÀ­¥Á¥§¥Ã¥¯) ;
  17. YEAR_OF_AGE ¥Õ¥¡¥ó¥¯¥·¥ç¥ó (ÃÂÀ¸Æü¤«¤éǯÎð¤ò»»½Ð)
  18. LENGTH0 ¥Õ¥¡¥ó¥¯¥·¥ç¥ó( Ťµ0 ¤Îʸ»úÎó¤òŤµ0 ¤È¤¹¤ë LENGTH )
  19. ¥Á¥§¥Ã¥¯¥Ç¥¸¥Ã¥È(C/D:¥Á¥§¥Ã¥¯¥Ç¥£¥¸¥Ã¥È)¤Î»»½Ð (JAN¡¢ITF ¥³¡¼¥ÉÍÑ)
  20. TRIM_MULTI ¥Õ¥¡¥ó¥¯¥·¥ç¥ó(Ⱦ³ÑÁ´³Ñ¡¢Ê£¿ôʸ»úÂбþ¤Î TRIM)
  21. ÆüÉÕ´Ø¿ô (ÆüÉÕ¥Á¥§¥Ã¥¯¡¢Ç¯Îð¡¢Ç¯¹æ¡¢·î½é¡¢Àè½µÆüÉÕ)
  22. NAME_OF_ERA ¥Õ¥¡¥ó¥¯¥·¥ç¥ó (»ØÄê¤ÎÆüÉÕ¤Îǯ¹æÌ¾¤ò¼èÆÀ)
  23. FIRST_DAY ¥Õ¥¡¥ó¥¯¥·¥ç¥ó (·î½é¤á¤ò¼èÆÀ)
  24. PREV_DAY ¥Õ¥¡¥ó¥¯¥·¥ç¥ó (Àè½µ¤Î¤¢¤ëÍËÆü¤ÎÆüÉÕ¤ò¼èÆÀ)
  25. ÆüÉÕ¤ÎÊ¿¶ÑÃͤò¼èÆÀ¤¹¤ë
¥¹¥Ý¥ó¥µ¡¼¥É ¥ê¥ó¥¯

IT¥¨¥ó¥¸¥Ë¥¢ ¥­¥ã¥ê¥¢¥¢¥Ã¥×¡¦Å¾¿¦¡¦µá¿Í¾ðÊó

Oracle & ITµ»½Ñ¼Ô ÀìÌç½ñ

¢£³¨¤Ç¸«¤Æ¤ï¤«¤ëOS/¥¹¥È¥ì¡¼¥¸/¥Í¥Ã¥È¥ï¡¼¥¯ ¥Ç¡¼¥¿¥Ù¡¼¥¹¤Ï¤³¤¦»
²Á³Ê: 2,310 ±ß ¡ÊÀǹþ¡Ë
¿·ÉÊ/¥æ¡¼¥º¥É²Á³Ê: 2,310 ±ß ¤è¤ê
¥ê¥ê¡¼¥¹: 2008-04-22
¥æ¡¼¥¶¡¼¥ì¥Ó¥å¡¼: 2 ·ï

¢£¥í¥¸¥«¥ë¡¦¥é¥¤¥Æ¥£¥ó¥° (BEST SOLUTION¡½LOGICAL COMMUNICATION
²Á³Ê: 2,310 ±ß ¡ÊÀǹþ¡Ë
¿·ÉÊ/¥æ¡¼¥º¥É²Á³Ê: 1,700 ±ß ¤è¤ê
¥ê¥ê¡¼¥¹: 2006-03-24
¥æ¡¼¥¶¡¼¥ì¥Ó¥å¡¼: 11 ·ï

¢£¥ª¥é¥¯¥ë¥Þ¥¹¥¿¡¼¶µ²Ê½ñGold Oracle Database 10g¡ÚDBA10g¡ÛÊÔ (
²Á³Ê: 4,725 ±ß ¡ÊÀǹþ¡Ë
¿·ÉÊ/¥æ¡¼¥º¥É²Á³Ê: 3,720 ±ß ¤è¤ê
¥ê¥ê¡¼¥¹: 2005-11-23
¥æ¡¼¥¶¡¼¥ì¥Ó¥å¡¼: 4 ·ï

ÆüËÜ¥ª¥é¥¯¥ë
¢£ ÆüËÜ¥ª¥é¥¯¥ë ³ô¼°²ñ¼Ò
¢£ ¥ª¥é¥¯¥ë¥Þ¥¹¥¿¡¼»ñ³Ê ¡Ê¥ª¥é¥¯¥ë¥Þ¥¹¥¿¡¼¤È¤Ï¡Ë
¢£ OTN Software Kit (³«È¯¼Ô¥é¥¤¥»¥ó¥¹)
Google