Avatar billede rasmusw Nybegynder
27. november 2001 - 19:25 Der er 1 løsning

auto_increment

Jeg har kigget på svaret på et tidligere spørgsmål, hvor det ønskes at lave et kolonne i en tabel, der automatisk tæller én op når man insert\'er data i tabellen.
Svaret der gives dér er (tilpasset min situation):
CREATE OR REPLACE TRIGGER test_ins_bef
  BEFORE INSERT ON test
  REFERENCING NEW AS new_row
  FOR EACH ROW
BEGIN
  SELECT test_seq.nextval INTO :new_row.id FROM dual;
END test_ins_bef;
Jeg har til test en tabel med to felter, den ene er id, som skal tælle automatisk op. Jeg har oprettet sekvensen test_seq med
create sequence test_seq start with 1;
Når jeg indtaster triggeren afslutter sqlplus ikke indtastnings-mode, og den slutter kun ved CTRL+C og det virker ikke som om triggeren virker.
Er der nogen der har en idé om hvad der er galt?
Avatar billede holdam Nybegynder
27. november 2001 - 20:16 #1
Mon ikke du mangler en / (altså en skråstreg) på linien EFTER din trigger-kode? Den får SQL*Plus til at udføre indholdet i bufferen - som i dit tilfælde er oprettelsen af triggeren test_ins_bef
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester