Biesterfeld: Postgres Einsatz von Serials und Indices

Beitrag lesen

Hej,

ich habe eine grundsätzliche Verständnisfrage zu Datenbanken. Zb. habe ich folgende Datendefinition:

  
CREATE TABLE tabX (  
   x_no  SERIAL     UNIQUE PRIMARY KEY,  
   entry VARCHAR(4) UNIQUE NOT NULL  
);  
  
CREATE TABLE tabY(  
   y_no  SERIAL     UNIQUE PRIMARY KEY,  
   entry VARCHAR(4) UNIQUE NOT NULL  
);  
  
CREATE TABLE x2y(  
   x_no INTEGER REFERENCES tabX ( x_no ),  
   y_no INTEGER REFERENCES tabY ( x_no )  
);  

Nun überlege ich mir einen Index für die beiden Primärschlüssel einzuführen, um Abfragen über die Linkingtabelle performanter zu gestalten.

Da ich aber die Serials (x_no und y_no) eigentlich sowieso nicht brauche (außer zum linken) und die entries unique not null sind, ist meine Frage, ob ich gleich die entries als Primärschlüssel deklarieren kann und den Index auf diesen Aufbauen.

Welche Methode ist performanter?

Besten Dank im voraus
Biesterfeld

--
Art.1: Et es wie et es
Art.2: Et kütt wie et kütt
Art.3: Et hätt noch immer jot jejange
Das Kölsche Grundgesetz