How do I make combination of 3 columns in typeorm, postgres unique?

Viewed 3452

How can I achieve that there aren't 2 same records in db with values of these 3 columns combined being the same?

  @Column()
  sector: string;

  @Column()
  row: string;

  @Column()
  number: string;
2 Answers

Updated Answer:

While creating a unique @Index like @Johannes suggested works for you, semantically the better solution would be creating a composite unique key.

@Unique(["sector", "row", "number"])

Based on https://stackoverflow.com/a/23665806/4343332, Postgres seems to handles both Unique Index and Unique Constraint in the same way internally.

Hence there will be no performance benefit in choosing either one.

Thank you for the insight @Johannes H.

Related