Avatar billede jacobchr Nybegynder
20. marts 2002 - 14:57 Der er 3 kommentarer og
1 løsning

Hvordan bruger man autonumering i postgresql ?

Hvordan kan man benytte autonummering i Postgresql ?

Feltet (fx id) oprettes som en int8 ikke og som primær.
Men hvordan tælles det automatisk op ?

/jaocb
Avatar billede razor Nybegynder
20. marts 2002 - 15:41 #1
Lav en SELECT MAX(id)+1 FROM table - derved får du det næste id i rækken
Avatar billede jacobchr Nybegynder
21. marts 2002 - 15:09 #2
Der er ikke en smartere måde .. tænkte på en indbygget funktion, for at spille for to database kald ?

/jacob
Avatar billede caveman99 Nybegynder
21. marts 2002 - 21:32 #3
Der er desværre ikke en mysql_insert_id til postgres, men du kan bruge det unikke nummer (som hver række i en table får i det skjulte) oid til at lave en select på autonummer kolonne. F.eks.

$x = pg_Exec($link, $sql);
$oid = pg_getlastoid($x);

derefter

'SELECT autonummer FROM tabel WHERE oid = $oid"
Avatar billede jacobchr Nybegynder
24. april 2002 - 10:09 #4
Fandt selv denne:
    $query= "
    CREATE SEQUENCE kode_id_seq;
    CREATE TABLE kode (
        id INT4 NOT NULL DEFAULT nextval('kode_id_seq'),
        tunderkategori INT4,
        beskrivelse varchar(255),
        kode text
    );
    CREATE UNIQUE INDEX kode_id_key ON kode ( id );";
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
Vi tilbyder markedets bedste kurser inden for webudvikling

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