OracleϵÁУº¼Ç¼Record
OracleϵÁУº¼Ç¼£¨Record£©
Ò»£¬Ê²Ã´ÊǼǼ£¨Record£©£¿
Óɵ¥ÐжàÁеıêÁ¿¹¹³ÉµÄ¸´ºÏ½á¹¹¡£¿ÉÒÔ¿´×öÊÇÒ»ÖÖÓû§×Ô¶¨ÒåÊý¾ÝÀàÐÍ¡£×é³ÉÀàËÆÓÚ¶àάÊý×é¡£
½«Ò»¸ö»ò¶à¸ö±êÁ¿·â×°³ÉÒ»¸ö¶ÔÏó½øÐвÙ×÷¡£ÊÇÒ»ÖÖÁÙʱ¸´ºÏ¶ÔÏóÀàÐÍ¡£
¼Ç¼¿ÉÒÔÖ±½Ó¸³Öµ¡£RECORD1 :=RECORD2£»
¼Ç¼²»¿ÉÒÔÕûÌå±È½Ï.
¼Ç¼²»¿ÉÒÔÕûÌåÅжÏΪ¿Õ¡£
¶þ£¬%ROWTYPEºÍ¼Ç¼£¨Record£©£¿
ÇëÇø±ð%ROWTYPEºÍ¼Ç¼£¨Record£©ÀàÐÍ¡£%ROWTYPE¿ÉÒÔ˵ÊÇRecordµÄÉý¼¶¼ò»¯°æ¡£
Çø±ðÔÚÓëǰÕ߽ṹΪ±í½á¹¹£¬ºóÕßΪ×Ô¶¨Òå½á¹¹¡£¶þÕßÔÚʹÓÃÉÏûÓкܴóÇø±ð¡£Ç°Õß·½±ã£¬ºóÕßÁé»î¡£ÔÚʵ¼ÊÖиù¾ÝÇé¿öÀ´¾ßÌå¾ö¶¨Ê¹Óá£
Record + PL/SQL±í¿ÉÒÔ½øÐÐÊý¾ÝµÄ¶àÐжàÁд洢¡£
Èý£¬ÈçºÎ´´½¨ºÍʹÓüǼ£¿
¢Ù´´½¨¼Ç¼ÀàÐÍ
Óï·¨£º
TYPE ¼Ç¼Ãû IS RECORD
¡¡¡¡(
filed1 type1 [NOT NULL] [£º=eXPr1],
¡¡¡¡ ....... ,
¡¡¡¡ filedN typen [NOT NULL] [£º=exprn]
£©
ÆäÖУ¬filed1ÊDZêÁ¿µÄÃû×Ö¡£
¢ÚÉùÃ÷¼Ç¼ÀàÐͱäÁ¿£º
¼Ç¼ÀàÐͱäÁ¿Ãû ¼Ç¼ÀàÐÍ
¢ÛÌî³ä¼Ç¼¡£
¢Ü·ÃÎʼǼ³ÉÔ±
¼Ç¼ÀàÐͱäÁ¿Ãû.filed1
.........
¼Ç¼ÀàÐͱäÁ¿Ãû.filedN
×¢Ò⣺
±í×Ö¶ÎÀàÐÍÐ޸ĺ󣬻¹ÐèÒªÐ޸ļǼ×Ö¶ÎÀàÐÍ£¬ÓÐʱºò¿ÉÄÜ»áÍü¼Ç£¬´Ó¶ø³öÏÖ´íÎó¡£
¶ÔÓڼǼÄÚÿ¸ö×ֶΣ¨filed1.¡£¡£¡££©£¬¿ÉÒÔÖ¸¶¨Ò²¿ÉÒÔʹÓÃ%TYPEºÍ%ROWTYPE¶¯Ì¬Ö¸¶¨¼Ç¼×Ö¶ÎÀàÐÍ¡£
ºÃ´¦ÊDZí×ֶη¢Éú±ä»¯£¬¼Ç¼×Ö¶Î×Ô¶¯¸Ä±ä¡£µ«ÊÇ£¬ÓÉÓÚÿ´ÎÖ´ÐÐǰ£¬Óöµ½%TYPR»ò%ROWTYPE£¬
Êý¾Ý¿âϵͳ¶¼»áÈ¥²é¿´¶ÔÓ¦±í×Ö¶ÎÀàÐÍ£¬»áÔì³ÉÒ»¶¨µÄÊý¾Ý¿â¿ªÏú£¬Èç¹ûϵͳÖдóÁ¿Ê¹ÓüǼÀàÐÍ£¬Ôò¶ÔÐÔÄÜ»áÓÐÒ»¶¨Ó°Ïì¡£
ÁíÍâÈç¹ûɾ³ýÁËijһ×ֶΣ¬¶ø×Ô¶¨Òå¼Ç¼ÖÐʹÓÃÁ˸Ã×ֶΣ¬Ò²»áÓпÉÄÜÍü¼Çɾ³ý¸Ã×ֶΡ£
¶ÔÊý¾Ý¿â¸ººÉÆ«µÍµÄϵͳ£¬ÐÔÄÜÎÊÌâÒ»°ã¿ÉÒÔ²»ÖØµã¹Ø×¢£¬µ«ÊǶÔÓڸ߸ººÉÊý¾Ý¿â·þÎñÆ÷£¬
¸÷¸ö»·½Ú¶¼Òª¿¼ÂÇÐÔÄÜÎÊÌ⣬ÿ´¦½Úʡһµã³öÀ´£¬ÐÔÄÜÕûÌå¾ÍÓкܴóÌá¸ß¡£
Óï·¨£º
TYPE ¼Ç¼Ãû&n
Ïà¹ØÎĵµ£º
CASE±í´ïʽ¿ÉÒÔÔÚSQLÖÐʵÏÖif-then-elseÐ͵ÄÂß¼£¬¶ø²»±ØÊ¹ÓÃPL/SQL¡£CASEµÄ¹¤×÷·½Ê½ÓëDECODE()ÀàËÆ£¬µ«Ó¦¸ÃʹÓÃCASE,ÒòΪËüÓëANSI¼æÈÝ¡£
CASEÓÐÁ½ÖÖ±í´ïʽ:
1. ¼òµ¥CASE±í´ïʽ,ʹÓñí´ïʽȷ¶¨·µ»ØÖµ.
Óï·¨:
CASE search_expression
WHEN expression1 THEN result1
WHEN expression2 THEN ......
oracle10g´´½¨Óû§
Oracle10g µÄ´´½¨Óû§Ãû
1¡¢ linux Ï oracle µÄÆô¶¯
ÒÔ oracle Éí·ÝµÇ¼
Æô¶¯ lsnrctl start
怬 sqplus /nolog
Á¬½ÓÊý¾Ý¿â connect /as sysdba
Æô¶¯Êý¾Ý¿â startup
¹Ø±ÕÊý¾Ý¿â s ......
select * from (select t.*,rownum rn from (select * from emp) t where rownum<=10) where rn>=6;
´´½¨·ÖÒ³½á¹û¼¯µÄÓαê
create or replace package fenyepackage as
type testcursor is ref cursor;
end fenyepackage;
´´½¨·ÖÒ³´æ´¢¹ý³Ì
create or replace procedure fenye3(
tableName varchar2, --±íÃû
......
Oracle ´¥·¢Æ÷ÓÐÓï¾ä¼¶´¥·¢Æ÷ºÍÐм¶´¥·¢Æ÷
Óï¾ä¼¶´¥·¢Æ÷ µ±É¾³ý²¿ÃűíÖеIJ¿ÃźÅʱ£¬Í¬Ê±É¾³ýµôÔ±¹¤±íÖв¿ÃźÅΪ£ºold.deptnoµÄ¼Ç¼
create or replace trigger del_dept_id
after delete on dept
for each row
begin
delete from emp where deptno=:old.deptno;
end;
µ±Íù²¿Ãűí²åÈëʱ£¬Í¬Ê±ÔÚÔ±¹¤±íÖ ......
ÔÚOracleÖн¨¿â£¬Í¨³£ÓÐÁ½ÖÖ·½·¨¡£Ò»ÊÇʹÓÃOracleµÄ½¨¿â¹¤
ÇÒDBCA£¬ÕâÊÇÒ»¸öͼÐνçÃæ¹¤ÇÒ£¬Ê¹ÓÃÆðÀ´·½±ãÇÒºÜÈÝÒ×Àí½â£¬ÒòΪËüµÄ½çÃæÓѺá¢ÃÀ¹Û£¬¶øÇÒÌáʾҲ±È½ÏÆëÈ«¡£ÔÚ£×indowsϵͳÖУ¬Õâ¸ö¹¤¾ß¿ÉÒÔÔÚOracle³ÌÐò×éÖдò¿ª£¨”¿ªÊ¼”—“³ÌÐò”—“ Oracle OraDb10g_home1”&mdash ......