oracle¼òµ¥¶ÔÏóÀàÐÍ
ÔÚplsqlÖУ¬ÃæÏò¶ÔÏóµÄ³ÌÐòÉè¼ÆÊÇ»ùÓÚ¶ÔÏóÀàÐÍÀ´Íê³ÉµÄ¡£¶ÔÏóÀàÐÍÊÇÓû§×Ô¶¨ÒåµÄÒ»ÖÖ¸´ºÏÊý¾ÝÀàÐÍ£¬Ëü·â×°ÁËÊý¾Ý½á¹¹ºÍÓÃÓÚ²Ù×ÝÕâЩÊý¾Ý½á¹¹µÄ¹ý³ÌºÍº¯Êý£¬ÔÚ½¨Á¢¸´ÔÓÓ¦ÓóÌÐòʱ£¬Í¨¹ýʹÓöÔÏóÀàÐÍ¿ÉÒÔ½µµÍÓ¦Óÿª·¢ÄѶȣ¬½ø¶øÌá¸ßÓ¦Óÿª·¢µÄЧÂʺÍËÙ¶È¡£
¶ÔÏóÀàÐͰüÀ¨¶ÔÏóÀàÐ͹淶£¨object type specification£©ºÍ¶ÔÏóÀàÐÍÌ壨object type body£©Á½¸ö²¿·Ö¡£ÆäÖжÔÏóÀàÐ͹淶ÊǶÔÏóÓëÓ¦ÓõĽӿڣ¬ËüÓÃÓÚ¶¨Òå¶ÔÏóµÄ¹«ÓÃÊôÐԺͷ½·¨£»¶ø¶ÔÏóÀàÐÍÌåÔòÓÃÓÚʵÏÖ¶ÔÏóÀàÐ͹淶Ëù¶¨ÒåµÄ¹«Ó÷½·¨£¬Èç¹û¶ÔÏóÀàÐ͹淶ÖÐûÓж¨Òå·½·¨£¬Ôò¿ÉÒÔ²»¶¨Òå¶ÔÏóÀàÐÍÌå¡£
¶ÔÏóÀàÐÍÊôÐÔÓÃÓÚÃèÊö¶ÔÏóËù¾ßÓеÄÌØÕ÷£¬Ã¿¸ö¶ÔÏóÀàÐÍÖÁÉÙ°üº¬Ò»¸öÊôÐÔ£¬ÖÁ¶à¿ÉÒÔ°üº¬1000¸öÊôÐÔ¡£¶ÔÏóÀàÐ͵ÄÊôÐÔ²»ÄÜʹÓÃlong¡¢long raw¡¢rowid¡¢urowid¡¢plsqlµÄÌØÓÐÀàÐÍ£¨binary_integer,Boolean,%type,%rowtype,ref cursor,record,pls_integer£©µÈ¡£²¢ÇÒÔÚ¶¨Òå¶ÔÏóÀàÐÍÊôÐÔʱ£¬¼È²»ÄÜÖ¸¶¨¶ÔÏóÊôÐÔµÄĬÈÏÖµ£¬Ò²²»ÄÜÖ¸¶¨notnullÑ¡Ïî¡£
ÐжÔÏóÊÇÖ¸Ö±½Ó»ùÓÚ¶ÔÏóÀàÐÍËù½¨Á¢µÄ±í£¬ÁжÔÏóÊÇÖ¸ÔÚ½¨±íʱָ¶¨Á˶ÔÏóÀàÐÍÁеĶÔÏó±í¡£ÏÂÃæ¸ø³öÁ˲Ù×÷ÐжÔÏóµÄ´úÂ룬ÁжÔÏó²Ù×÷·½Ê½ÀàËÆ¡£
ʾÀý1£ºÐжÔÏóÊý¾Ý²Ù×÷£¨°üº¬ÁжÔÏóÊý¾ÝµÄ²Ù×÷ÀàËÆ£©
--½¨Á¢¶ÔÏóÀàÐÍ
create or replace type person_obj as object(
name varchar2(10),
gender number(1),
birthday date);
--½¨Á¢ÐжÔÏ󣨻ùÓÚperson_obj£©
create table person_table of person_obj;
--ΪÐжÔÏó²åÈëÊý¾Ý
insert into person_table values(person_obj('jax01',1,sysdate)); --¹¹Ôì·½·¨
insert into person_table values('jax02',1,sysdate); --ÆÕͨ·½·¨
--¼ìË÷ÐжÔÏóÊý¾Ý
select * from person_table where name = 'jax01';
--¸üÐÂÐжÔÏóÊý¾Ý
update person_table set birthday = to_date('2004-05-12','YYYY-MM-DD')
where gender = 0;
Ïà¹ØÎĵµ£º
Êý¾Ý¿âÃû(DB_NAME)¡¢ÊµÀýÃû(Instance_name)¡¢ÒÔ¼°²Ù×÷ϵͳ»·¾³±äÁ¿(ORACLE_SID)
ÔÚORACLE7¡¢8Êý¾Ý¿âÖÐÖ»ÓÐÊý¾Ý¿âÃû(db_name)ºÍÊý¾Ý¿âʵÀýÃû(instance_name)¡£ÔÚORACLE8i¡¢9iÖгöÏÖÁËеIJÎÊý£¬¼´Êý¾Ý¿âÓòÃû(db_domain)¡¢·þÎñÃû(service_name)¡¢ÒÔ¼°²Ù×÷ϵͳ»·¾³±äÁ¿(ORACLE_SID)¡£ÕâЩ¶¼´æÔÚÓÚͬһ¸öÊý¾Ý¿âÖеıêʶ£¬ÓÃÓÚ ......
oracleËøµÄÅŶӻúÖÆ£º
ÇëÇóËø¶¨ÐèÒªÅŶӡ£Èç¹ûij¸ö»á»°ÇëÇóÒ»¸öËø¶¨£¬µ«ÊÇÓÉÓÚÆäËû»á»°ÒÑ¾Ëø¶¨ÁËÖ¸¶¨¼Ç¼»ò¶ÔÏó¶øÎÞ·¨»ñµÃËùÐèµÄËø¶¨£¬ÄÇôÕâ¸ö»á»°½«»áµÈ´ý¡£´Ëʱ£¬¿ÉÄܶà¸ö»á»°¶¼Ôڵȴý·ÃÎÊÏàͬ¼Ç¼»ò¶ÔÏó£¬ÔÚÕâÖÖÇé¿öÏ£¬ORACLE»á¸ú×ÙÕâЩ»á»°ÇëÇóËø¶¨µÄ˳Ðò¡£
Èç¹û ......
ºÜ¶àÅóÓÑÖ»ÓÃÁËoracleµÄɾ³ý£¬µ«ºÜ¶àÇé¿öÏ£¬Ëû»á·¢ÏÖÖØÐ°²×°Ê±£¬µãÁËÏÂÒ»²½°²×°½çÃæ¾ÍÏûʧÁË£¬ÍùÍùÎÞÄÎÏÂÖ»ºÃÖØ×°ÏµÍ³£¬ÆäʵֻÊÇÄãÊý¾Ý¿âûɾ¸É¾»£¬É¾¸É¾»¾Í²»»á³öÏÖÕâÖÖÇé¿öÁË¡£
ʵÏÖ·½·¨£º
1¡¢ ¿ªÊ¼££¾ÉèÖ㣾¿ØÖÆÃæ°å££¾¹ÜÀí¹¤¾ß££¾·þÎñ Í£Ö¹ËùÓÐOracle·þÎñ¡£
&n ......
ÿ´Îͨ¹ýÐÞ¸Ätnsnames.oraÅäÖñ¾µØNET·þÎñÃû¶¼³öÏÖ´íÎó“ORA-12154:TNS£¬ÎÞ·¨´¦Àí·þÎñÃû”£¬×ܵÃÓôÃÆ°ëÌì~
Õâ¸ö´íÎó£¬Í¨³£ÊÇÒòΪoracle±¾µØNET·þÎñÃûÅäÖÃtnsnames.oraÎļþÓÐÑϸñµÄ¸ñʽҪÇó¡£
ÀýÈ磺
mstrdw =
(DESCRIPTION =
(ADDRESS_LIST =
......
ÉÏһƪÎÄÕÂдÁËÒ»¸öoracleµÄÒ»¸öÐÐתÁеÄÀý×Ó£¬ÀïÃæÓõ½ÁËoracleÖÐÖØÒªµÄº¯Êý decode,ÕâÆªÎÄÕ¾ÍÀ´¼òµ¥µÄѧϰÕâ¸öº¯Êý
DECODEº¯ÊýºÍÎÒÃÇÓïÑԽṹÖеÄÌõ¼þÓï¾ä£¨IF£©ÏàËÆ¡£Ëü½«ÊäÈëÊýÖµÓ뺯ÊýÖеIJÎÊýÁбíÏà±È½Ï£¬¸ù¾ÝÊäÈëÖµ·µ»ØÒ»¸ö¶ÔÓ¦Öµ¡£
DECODEº¯ÊýÏ൱ÓÚÒ»Ìõ¼þÓï¾ä(IF).Ëü½«ÊäÈëÊýÖµÓ뺯ÊýÖеIJÎÊýÁбíÏà±È½Ï£¬¸ù¾ÝÊ ......