2015-04-08 6 views
0

У меня есть столбец, который является типом данных Number и Nullable. Прямо сейчас нет доступных записей. И значение столбца генерируется с помощью next_val.Что должно быть следующего значения?

Будет ли первое значение столбца иметь возможность генерировать число, или мне нужно назначить первый номер вручную.

Пожалуйста, дайте мне знать, если это неясно.

+0

Что произошло, когда вы попробовали? – wvdz

ответ

2

Создайте последовательность и используйте sequence.nextval, чтобы использовать порядковый номер.

Например,

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

Sequence created. 

SQL> 
SQL> CREATE TABLE t(A NUMBER); 

Table created. 

SQL> 
SQL> INSERT INTO t SELECT s.nextval FROM dual; 

1 row created. 

SQL> 
SQL> SELECT * FROM t; 

     A 
---------- 
     1 

SQL> 

Я написал небольшую статью о триггер последовательности подхода для заполнения последовательности в предыдущих версиях 12с. См. http://lalitkumarb.wordpress.com/2015/01/20/auto-increment-primary-key-in-pre-12c-releases-identity-functionality/

Если вы находитесь на 12c, вы можете использовать столбец IDENTITY. Прочитано http://lalitkumarb.wordpress.com/2015/01/20/identity-column-autoincrement-functionality-in-oracle-12c/