-
Ajout d'un champ clé
Bonjour,
je voudrais ajouter un champ clé au niveau d'une table existante et bien sur contenant des milliers de lignes :?
cette table ne contient aucun champ key (le concepteur à claquer n'y a pas pensé )
comment remédier à cela ?
j'ai pensé à ajouter une colonne , que je remplie ( a chaque fois +1) , une fois fini je le add en tant que PK,
est ce que c'est la bonne soluce ?
-
oui je crois ke tu peux faire ceci mais tu dois peut etre songer avant tout a eliminer les lignes dupliqués et la ca sera beaucoup plus facile de choisir une clé primaire parmi les colonnes de la table ou den ajouter une colonne pour jouer le role de clé primaire.
-
Salut,
En même temps, j'en vois pas d'autres !
Tu veux ajouter une colonne, donc tu commence par... en ajouter une !!
Tu veux qu'elle soit PK, donc il faut d'abord la remplir, donc tu la.... remplis !!
Ensuite tu veux en faire une PK, ça tombe bien, tu la remplis comme il fallait, donc tu la déclare... PK !!
Donc non, pas mieux.
-
Bonjour,
Milliers d'enregistrements , tout est relatif, sur un serveur puissant, ce devrait pas etre long.
Solution 1 ,
Tu crées un sequence
Tu créés une autre table + la nouvelle colonne PK
tu inseres les données de la table initiale dans la seconde
tu fais grant, trigger...,indexes...
tu ajoutes la pk
tu renommes l'ancienne table
tu renomme la novelle avec le nom de l'ancien
Solution 2
tu ajoutes un sequence
tu ajoutes la colonne
tu updates ta table avec sequence
tu ajoutes la PK
----------
tu testes et vois laquelle te vas en temps d'intervention
Bien entendu les lignes dupliquées il faut les supprimmer
-
:king: Merci pour le tuyau