[ת]ÔÚoracleÏ´¥·¢Æ÷ʵÏÖÖ÷¼ü×ÔÔö
ÀûÓÃÐòÁвúÉúÖ÷¼üÖµ¡£
ÐòÁУ¨Sequence£©ÊÇÒ»ÖÖ¿ÉÒÔ±»¶à¸öÓû§Ê¹ÓõÄÓÃÓÚ²úÉúһϵÁÐΨһÊý×ÖµÄÊý¾Ý¿â¶ÔÏó¡£ÐòÁж¨Òå´æ´¢ÔÚÊý¾Ý×ÖµäÖУ¬Í¨¹ýÌṩΨһÊýÖµµÄ˳Ðò±íÀ´¼ò»¯³ÌÐòÉè¼Æ¹¤×÷£¬¿ÉÒÔʹÓÃÐòÁÐ×Ô¶¯²úÉúÖ÷¼üµÄ¼üÖµ¡£µ±Ò»¸öÐòÁеÚÒ»´Î±»²éѯµ÷ÓÃʱ£¬Ëü½«·µ»ØÒ»¸öÔ¤¶¨Öµ¡£ÔÚËæºóµÄÿ´Î²éѯÖУ¬ÐòÁн«²úÉúÒ»¸ö°´Ö¸¶¨µÄÔöÁ¿Ôö³¤µÄÖµ¡£ÐòÁпÉÒÔÑ»·£¬»òÕßÊÇÁ¬ÐøÔö¼ÓµÄ£¬Ö±µ½Ö¸¶¨µÄ×î´óֵΪֹ¡£
´´½¨ÐòÁÐÓï·¨ÈçÏ£ºcreate sequence [ģʽ]ÐòÁÐÃû³Æ[start with ÆðʼÊý×Ö] [increment by ÔöÁ¿][maxvalue ×î´óÖµ|nomaxvalue][minvalue ×îСֵ|nominva lue][cycle|nocuyle][cache ÊýÄ¿|nocache][order|noorder]¡£
ͨ¹ýÐòÁÐÆðʼÊý×Ö¡¢×î´óÖµ¡¢×îСֵºÍÔöÁ¿Öµ¿ÉÒÔÈ·¶¨ÐòÁÐÊÇÔöÐò»¹ÊǼõÐò£¬Ã¿´ÎÔö»ò¼õµÄ¶àÉÙ¡£NocyleÑ¡ÏîÓÃÓÚÈ·¶¨ÔÚÐòÁдﵽ×î´óÖµ£¨ÔöÐòÁУ©»ò×îСֵ£¨¼õÐòÁУ©Ö®ºó²»ÄÜÔÙ²úÉú¸ü¶àµÄÖµ£¬ÓÃÒÔ·ÀÖ¹ÐòÁлØ×ª¡£
ÔÚOracleÊý¾Ý¿âÖд´½¨ÐòÁУ¬ÔÚʹÓÃsqlÓï¾äÏòÊý¾Ý¿âÖÐдÈëÊý¾ÝµÄʱºò£¬ÀûÓÃÐòÁвúÉúµÄΨһֵ£¬ÊµÏÖ±íÖÐÖ÷¼üÖµ×ÔÔö¡£ÀýÈ磺
SQL>create table tablename
(id number notnull,…);
SQL >create sequence autoID increment by 1 start with 1 maxvalue 999999 cycle;
SQL >insert into tablename values(autoID.nextval,...);
¶à¸öÓû§¿ÉÒÔ¹²ÓÃÒ»¸öÐòÁÐ,µ«ËüÊÇÕë¶ÔËùÓеıí,Òò´Ë²úÉúµÄÐòºÅ¶ÔÒ»¸ö±í¶øÑÔ²úÉúµÄÖ÷¼üֵΨһµ«ÊDz»Á¬Ðø¡£
ʹÓô¥·¢Æ÷²úÉúÖ÷¼üÖµ¡£
ÔÚÊý¾Ý±íÖУ¬ÓÐʱºòÐèÒªÖ÷¼üÖµ×Ô¶¯Ôö¼Ó£¬µ«ÔÚOracleÊý¾Ý¿âÖУ¬Ã»ÓÐÏóMysqlµÄAutoincrementÒ»Ñù×Ô¶¯Ôö³¤µÄÊý¾ÝÀàÐÍ¡£ÔÚʵÏÖOracleÊý¾Ý¿â×Ö¶Î×ÔÔö¹¦ÄÜʱ£¬ÀûÓÃDML´¥·¢Æ÷À´Íê³É¡£
´¥·¢Æ÷£¨trigger£©ÊÇһЩ¹ý³Ì£¬µ±·¢ÉúÒ»¸öÌØ¶¨µÄÊý¾Ý¿âʼþʱ¾ÍÖ´ÐÐÕâЩ¹ý³Ì£¬¿ÉÒÔʹÓô¥·¢Æ÷À©³äÒýÓõÄÍêÕûÐÔ¡£DML¼´Êý¾Ý²Ù×ÝÓïÑÔ,ÓÃÓÚÈÃÓû§»ò³ÌÐòԱʹÓã¬ÊµÏÖ¶ÔÊý¾Ý¿âÖÐÊý¾ÝµÄ²Ù×÷¡£»ù±¾µÄÊý¾Ý²Ù×÷·Ö³ÉÁ½ÀàËÄÖÖ£º¼ìË÷£¨²éѯ£©ºÍ¸üУ¨²åÈ롢ɾ³ý¡¢Ð޸ģ©¡£´¥·¢Æ÷ÀàËÆÓÚº¯ÊýºÍ¹ý³Ì£¬ÆäÔÚÊý¾Ý¿âÖÐÒÔ¶ÀÁ¢Éí·Ö´æÔÚ¡£´¥·¢Ê¼þ¿ÉÒÔÊǶÔÊý¾Ý¿â±íµÄDML£¨insert¡¢update»òdelete£©²Ù×÷µÈ
Ïà¹ØÎĵµ£º
1.»ù±¾½á¹¹
CREATE OR REPLACE PROCEDURE ´æ´¢¹ý³ÌÃû×Ö
(
²ÎÊý1 IN NUMBER,
²ÎÊý2 IN NUMBER
) IS
±äÁ¿1 INTEGER :=0;
±äÁ¿2 DATE;
BEGIN
END ´æ´¢¹ý³ÌÃû×Ö
2.SELECT INTO STATEMENT
½«select²éѯµÄ½á¹û´æÈëµ½±äÁ¿ÖУ¬¿ÉÒÔͬʱ½«¶à¸öÁд洢¶à¸ö±äÁ¿ÖУ¬±ØÐëÓÐÒ»Ì ......
oracle ÖÐ TO_DATE º¯ÊýµÄʱ¼ä¸ñʽ£¬ÒÔ 2008-09-10 23:45:56 ΪÀý
¸ñʽ
˵Ã÷
ÏÔʾֵ
±¸×¢
Year(Äê):
yy
two digits(Á½Î»Äê)
08
yyy
three digits(ÈýλÄê)
008
yyyy
four digits(ËÄλÄê)
2008
Month(ÔÂ):
mm
number(Á½Î»ÔÂ)
09
mon
abbre ......
µ¼ÈëÊý¾ÝµÃʱºò£¬Óöµ½Ò»¸öÎÊÌ⣬Ïë°ÑÁÐÃû˳Ðò¸Ä±äһϡ£ÔÚÍøÉÏËÑË÷µ½ÕâÆªÎÄÕ£¬Ã»È¥ÊÔÑé¡£ÌùÉÏÀ´£¬ÒÔºóÓлú»áÊÔÑéÏ¡£
£¨http://www.im80hou.com/html/oracle/2009/0710/712.html£©
°´ÕÕ¹ØÏµÊý¾Ý¿âµÄÀíÂÛ£¬ÐÐÓëÁж¼ÊÇÎÞÐòµÄ£¬µ«ÔÚʵ¼ÊÓ¦ÓÃÖÐÓÐʱÐèҪȷ¶¨ÁеÄ˳Ðò¡£µ«ÔÚOracleÖУ¬Ò»µ©±í¶¨ÒåºÃ£¬ÔÙÏëÐÞ¸ÄÁеÄ˳Ðò¿ ......
OracleµÄ9¸ö_name
2008-07-17 23:47
1¡¢db_name Êý¾Ý¿âÃû
¡¡¡¡SQL> connect xys/manager as sysdba
¡¡¡¡ÒÑÁ¬½Ó¡£
¡¡¡¡SQL> show user
¡¡¡¡USER Ϊ "SYS"
¡¡¡¡SQL> show parameter db_name
¡¡¡¡NAME TYPE VALUE
¡¡¡¡---- -------- ------------
¡¡¡¡db_name string test1
¡¡¡¡db_nameÊÇÊý¾Ý¿âµÄÃû×Ö£¬or ......