sql >> Database >  >> RDS >> PostgreSQL

Forceer in Postgresql uniek op combinatie van twee kolommen

CREATE TABLE someTable (
    id serial PRIMARY KEY,
    col1 int NOT NULL,
    col2 int NOT NULL,
    UNIQUE (col1, col2)
)

autoincrement is niet postgresql. U wilt een integer primary key generated always as identity (of serial als u PG 9 of lager gebruikt. serial was zacht verouderd in PG 10).

Als col1 en col2 maak een unieke en kan niet null zijn, dan maken ze een goede primaire sleutel:

CREATE TABLE someTable (
    col1 int NOT NULL,
    col2 int NOT NULL,
    PRIMARY KEY (col1, col2)
)


  1. .NET 4:EDMX-bestand configureren in een andere assembly in Web.Config

  2. Een tabel neerzetten in SQL

  3. SQLAlchemy OP DUPLICATE KEY UPDATE

  4. Waarom een ​​LEES UNCOMMITTED isolatieniveau gebruiken?