¡iÁÉ}ºô¡ÐIT§Þ³N³ø¹D¡j¨Ï¥ÎIBM DB2¼Æ¾Ú®w®É¥²¶·¤F¸Ñªº´XÓª¾ÃÑÂI:
¡»1.¦b¦w¸ËDB2¼Æ¾Ú®w«á¡A§A¥i¥H³q¹L©R¥O¦æ¤è¦¡©Î¹Ï§Î¤¶±¤è¦¡¨Ó¾Þ§@¡A°²¦p§Aªº¼Æ¾Ú®wªA°ÈºÝ¤£¦b¥»¾÷¡A«h»Ýn¦b¡§«È¤á¾÷°t¸m»²§Uµ{¦¡¡¨¤¤°µ¤@ӫȤáºÝ³s±µªº°t¸m¡C
¡»2.±±¨î¤¤¤ß¤¤µLªk¼W§R§ï¼Æ¾Ú¡A¥u¯à½s¼gsql»y¥y¨Ó¹ê²{¦Óquest´£¨Ñªº¤u¨ãÁöµM¯à¼W¥[¼Æ¾Ú¡A¦ý©~µMµLªk¥Î½Æ»s¡BÖß¶K©MTabÁä¡A¥²¶·³vÓ¿é¤J¡AµM«á¥Î·Æ¹«ÂIÀ»¤Á´«²{¦s¼Æ¾Ú¬Ý¨Ó¥i¥H¦b³æ¤¸®æ¤¤½s¿è×§ï¡A¦ý¹ê»Ú«oµLªkcommit¡A¨þ¨þ¡AÁÙ¬O¦Ñ¦Ñ¹ê¹ê¼gupdate»y¥y¡A¦Ü©ó§R°£¼Æ¾Ú¡A§ó¬O«D¼gdelete»y¥y¤£¥i¡C¤£¹L¥i¥H¥Îpb¥H³æ¤¸®æ¤è¦¡½s¿è¼Æ¾Ú¡A¬ÛÀ³ªº¤@Ó¯ÊÂI¬O½s¿è¼Æ¾Úªº«ö¶s©M§R°£ªíªº«ö¶s¤Óªñ¡A¸U¤@ÂI¿ù¤F§R°£ªíªº«ö¶s¡Apb¥i¬O¤£§@´£¥Ü´N§âªíµ¹§R¤Fªº¡Afaint
¡»3.DB2ªºµø¹Ïùؤ£¯àª½±µ¥Îorder by»y¥y¡A¥²¶·³o¼Ë¼g¡G
select ¡Ñ from(select a¡Ab¡Ac from table1 order by a)as¡@tab
µùÄÀ¡G³oºØ¼gªkªº«e´£¬O§A¤w¸g¥´¹L¸É¤B¤F
¡»4.¦sÀx¹Lµ{ªº°ÝÃD:
DB2´£¨Ñltrim¨ç¼Æ©Mrtrim¨ç¼Æ¡A¦ý°¾°¾¤£´£¨Ñtrim¨ç¼Æ¡A¦pªG§A§Æ±æ¥h°£¦r²Å¨âºÝªºªÅ®æ¡A¹ï¤£°_¡A¥²¶·¥Îltrim(rtrim()) ªº¤è¦¡½Õ¥Îinsert »y¥yùر©~µM¤£¯à¥Î¹Bºâ¦¡½áÈ¡A¥²¶·§âÈ¥ý½áµ¹¤@ÓÅܼƽեΨä¥L¦sÀx¹Lµ{®É³ºµM¤£¯à¥Î±`¶q°µ°Ñ¼Æ¡A¥²¶·§â³oÓ±`¶qªºÈ½áµ¹¤@ÓÅܼơA¦A¥H³oÓÅܼƬ°°Ñ¼Æ
select * from table fetch first n rows only »y¥y©~µM¦b¦sÀx¹Lµ{ùؤ£¥i¥Î
¡»5.¦sÀx¹Lµ{ùØ¥i¥H¨Ï¥Î°ÊºAsql,¦ý¨ç¼ÆùØ«o¤£¥i¥H¨Ï¥Î,kao
¡»6. ¹J¨ìcommit©Îrollback®É¦Û°ÊÃö³¬¹C¼Ð¡A©Ò¥H»Ýn·V«¨Ï¥Î³æ¿W´£¥æ¡C
proc builder¦Ñ¬O¦b½Õ¸Õ¤¤°O¾ÐÅ餣¨¬¡A¿Ã¹õªá±¼¡C¦Ó¦pªG¤¤Â_ÂI½Õ¸Õ®É¼È°±¤£¶i¦æ¤U¥hªº®É¶¡µy·Lªø¤@ÂI´N·|´£¥Ü¶W®É¡A¨ü¤£¤F¡C
¡»7.¶}µo°ÝÃD¡G
¦b¨Ï¥Î ¤é´ÁÅܼÆ+1 MONTHS OR ¤é´ÁÅܼÆ-1 MONTHS ªº¤è¦¡¨ú¤é´Á®É¡A¤ñ¦p¤é´ÁÅܼÆÈ¬° 2004-02-29®É¡A¦sÀx¹Lµ{ùرN¤é´ÁÅܼÆ+1 MONTHS ½áȵ¹¥t¤@
¤é´ÁÅܼƮɷ|¥X¿ù¡C¬ÛÀ³SQLSTATE¬°01506(db2 ? 01506): ¹ï DATE ©ÎTIMESTAMPȶi¦æ¤F½Õ¾ã¡A¥H®Õ¥¿ºâ³N¹Bºâ±o¥XªºµL®Ä¤é´Á¡C
¦pªGnÀò¨úªº¥u¬O¤U¤@¤ë¥÷¡A¥i±Ä¥Îªº´À¥N¤èªk¬OÀò¨ú·í«e¤é´Á©Ò¦b¤ë¥÷ªº²Ä¤@¤Ñ§@¬°°ò·Ç«á+1 MONTHS OR -1 MONTHS
¡»8.¹ïÅܼƪº½áȤ£¯à¥Îselect ..into ..¤è¦¡¦Ón¥Îset v=(select ..)ªº¤è¦¡¡A¨ãÅ骺¥Ü¨Ò¦p¤U¡G
drop function SXFM.ISORDERSUBMITDATE;
CREATE FUNCTION SXFM.ISORDERSUBMITDATE(IN_ROW_ID DECIMAL(16,0))
RETURNS DATE
LANGUAGE SQL
BEGIN ATOMIC
DECLARE V_SUBMIT_DATE DATE;
DECLARE V_SELL_ID DECIMAL(16, 0);
DECLARE V_BUY_ID DECIMAL(16, 0);
set V_SELL_ID = (SELECT COALESCE(RECEIVE_ID,-1) FROM IS_ORDER WHERE ROW_ID=IN_ROW_ID);
set V_BUY_ID = (SELECT COALESCE(PAY_ID,-1) FROM IS_ORDER WHERE ROW_ID=IN_ROW_ID);
set V_SUBMIT_DATE = (SELECT DATE(MAX(A.SUBMIT_DATE)) FROM AM_AUDIT_QUEUE A,SM_USER B,SM_USER C
WHERE A.TABLE_CODE=¡¦IS_ORDER¡¦ AND A.TABLE_ROW_ID=IN_ROW_ID
AND A.AUDIT_EMP_ID=C.ROW_ID AND C.BRANCH_ID=V_BUY_ID --¼f®Ö¤è¬°¥I´Ú¤è
AND A.SUBMIT_EMP_ID=B.ROW_ID AND B.BRANCH_ID=V_SELL_ID); --´£¥æ¤è¬°¦¬´Ú¤è
RETURN V_SUBMIT_DATE;
END;
#SYNC 10;
¡]³d¥ô½s¿è¡G¿c¥üªL¡^