sql >> Database teknologi >  >> RDS >> PostgreSQL

Autoincrement i liquibase

I stedet for at bruge bigserial, som er en autoincrementing bigint, der er specifik for postgres, skal du bruge bigint, hvis du skal opsætte din egen increment og sekvens." Datatyperne smallserial, serial og bigserial er ikke sande typer, men blot en notationsmæssig bekvemmelighed til at skabe unikke identifikatorkolonner (svarende til AUTO_INCREMENT-egenskaben, der understøttes af nogle andre databaser). I den aktuelle implementering angives:"

CREATE TABLE tablename (
    colname SERIAL
);

er det samme som

CREATE SEQUENCE tablename_colname_seq AS integer;
CREATE TABLE tablename (
    colname integer NOT NULL DEFAULT nextval('tablename_colname_seq')
);
ALTER SEQUENCE tablename_colname_seq OWNED BY tablename.colname;

Herfra

https://www.postgresql.org/docs/12/datatype-numeric .html




  1. manglende eller ugyldig mulighed ved oprettelse af tabel på grund af, hvis den ikke eksisterer

  2. Hvilket Visual Studio har jeg brug for til MySQL?

  3. PHP, MySQL:Modtag e-mail, søg automatisk i DB og send e-mail baseret på resultaterne

  4. Hvad betyder følgende Oracle-fejl:ugyldigt kolonneindeks