2010-05-30 5 views

Répondre

5

La clé primaire ne génère aucune valeur par elle-même. C'est une contrainte. Dans votre exemple, vous devez faire ensuite:

  1. Ajouter une colonne pour la valeur PK, déclarer NOT NULL
  2. Remplissez la colonne avec des valeurs uniques
  3. Créer contrainte PK

Exemple:

CREATE TABLE test (a varchar(20)); 

COMMIT; 

INSERT INTO test (a) VALUES ('A'); 
INSERT INTO test (a) VALUES ('B'); 
INSERT INTO test (a) VALUES ('C'); 

COMMIT; 

ALTER TABLE test ADD pk INTEGER NOT NULL; 

CREATE GENERATOR g_test; 

COMMIT; 

UPDATE test SET pk = GEN_ID(g_test, 1); 

ALTER TABLE test ADD CONSTRAINT test_pk 
    PRIMARY KEY (pk); 
Questions connexes