Oracle/MySQL °ü·Ã °Ô½ÃÆÇ

2015/01/11(23:51) from 58.125.30.140
ÀÛ¼ºÀÚ : ÁÖÀÎÀå Á¶È¸¼ö : 2721 , ÁÙ¼ö : 39
[Oracle] Mysql's auto-increment ±â´É±¸Çö (sequence & trigger)
1. ½ÃÄö½º »ý¼º (Oracle SQL Developer)

SQL> CREATE  SEQUENCE  persons_id_seq  START  WITH  1
INCREMENT BY 1;


2. ½ÃÄö½º Á¶È¸

SQL> SELECT * FROM user_sequences;


3. ÇöÀç/´ÙÀ½ ½ÃÄö½º Á¶È¸, »ðÀÔ

SQL> SELECT persons_id_seq.currval FROM dual;     // nextvalÀ» ¸ÕÀú Á¶È¸ÇÏ°í currvalÀ» Á¶È¸ÇØ¾ß ÇÔ
SQL> SELECT persons_id_seq.nextval FROM dual;

SQL> INSERT INTO persons(id, name) values(persons_id_seq.NEXTVAL, 'È«±æµ¿');


4. ½ÃÄö½º ÃʱâÈ­



´Ù¸¥¹æ¹ý Æ®¸®°Å »ç¿ë

5. Æ®¸®°Å »ý¼º (Oracle SQL Developer)

CREATE OR REPLACE TRIGGER  trigger_book_auto_id
 BEFORE  INSERT  ON  book
 FOR EACH ROW
BEGIN
 IF INSERTING THEN
   IF :NEW.id is null THEN
     SELECT book_id_seq.nextval INTO :NEW.id FROM DUAL;
   END IF;
 END IF;
END;


Modify Delete Post Reply Backward Forward List
Powered by Kang Jul Ki