Sequence & DEFAULT klauzule (ORA 8.0.5)
Honza Pazdziora
adelton na informatics.muni.cz
Pondělí Leden 17 11:46:26 CET 2000
> zkouším použít sequence a nějak se mi nedaří.
> Vytvořil jsem sequenci:
>
> CREATE SEQUENCE seq_name starting with 1 increment by 1 nomaxvalue;
>
> a chtěl ji použít jako default hodnotu v tabulce (v Application
> developer's guide, str. 4-26 se píše, že CURRVAL and NEXTVAL smí být
> použito m.j. pro DEFAULT value of a column in a CREATE TABLE or ALTER
> TABLE statement).
No, ono je tam prave napsano
CURRVAL and NEXTVAL __cannot__ be used in these places:
...
* DEFAULT value of a column in a CREATE TABLE or ALTER
TABLE statement
...
Tech pripadu, kdy muze, je podstatne mene nez tech, kde nemuze ;-)
> Zkusil jsem tedy ALTER TABLE tabulka MODIFY (sloupec DEFAULT VALUE
> seq_name.NEXTVAL);
> a Ora mi hned mrsknul do očí nadávku, že: "ORA-00984: sloupec zde není
> povolen" a označil jméno sequence. To samé uvedl, rozšířil-li jsem název
> sequence na plné jméno, tedy schema.seq_name.
>
> Mohli byste mi někdo sdělit, co dělám blbě?
No, pouzivate to v default klauzuli. Doporucuji napat si na to
trigger.
------------------------------------------------------------------------
Honza Pazdziora | adelton na fi.muni.cz | http://www.fi.muni.cz/~adelton/
.project: Perl, DBI, Oracle, MySQL, auth. WWW servers, MTB, Spain.
------------------------------------------------------------------------
Další informace o konferenci Test