Précédent   Forum des professionnels en informatique > Bases de données > DB2
DB2 Forum d'entraide technique sur la base de données DB2. Voir aussi -> Rubrique DB2
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 26/07/2007, 12h21   #1
Membre éprouvé
 
Homme
Consultant en Business Intelligence
Inscription : mai 2003
Messages : 910
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 30
Localisation : France, Loire Atlantique (Pays de la Loire)

Informations professionnelles :
Activité : Consultant en Business Intelligence

Informations forums :
Inscription : mai 2003
Messages : 910
Points : 407
Points : 407
Par défaut [AS400] Création table avec champ en numérotation auto ?

Bonjour,

je travaille sur une BDD DB2/AS400 (V5R4) et j'ai besoin de modifier plusieurs tables contenant des données, mais sur une BDD de test.

Je dois modifier le champ contenant la clé primaire de chacune de ces tables pour qu'il soit en numérotation automatique.

La numérotation automatique en DB2 sur AS400 existe-t-elle ?

Est-il possible de le faire sur une table contenant des données ?


Merci d'avance.

Gôm
__________________
Quand on n'a pas d'tête, on a ...
ghohm est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/07/2007, 14h19   #2
Membre éprouvé
 
Homme
Consultant en Business Intelligence
Inscription : mai 2003
Messages : 910
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 30
Localisation : France, Loire Atlantique (Pays de la Loire)

Informations professionnelles :
Activité : Consultant en Business Intelligence

Informations forums :
Inscription : mai 2003
Messages : 910
Points : 407
Points : 407
Citation:
Envoyé par ghohm
La numérotation automatique en DB2 sur AS400 existe-t-elle ?
D'après une source en interne, cela est possible, mais (forcément) cette personne ne se souvient plus comment elle a fait !

Citation:
Envoyé par ghohm
Est-il possible de le faire sur une table contenant des données ?
A priori, non.

Mais ce n'est pas grave, je vais simplement ressaisir les données ... il y a 3 fois rien dedans.


Si quelqu'un avait un exemple à me donner de création (ou d'altération) d'une table contenant un champ en incrémentation automatique (numérotation automatique) ce serait vraiment sympa !


Merci d'avance.
__________________
Quand on n'a pas d'tête, on a ...
ghohm est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/07/2007, 15h13   #3
Membre éprouvé
 
Homme
Consultant en Business Intelligence
Inscription : mai 2003
Messages : 910
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 30
Localisation : France, Loire Atlantique (Pays de la Loire)

Informations professionnelles :
Activité : Consultant en Business Intelligence

Informations forums :
Inscription : mai 2003
Messages : 910
Points : 407
Points : 407
Code :
CREATE TABLE mon_schema/ma_table (c1 int GENERATED ALWAYS AS IDENTITY, c2 char(3))
Code :
INSERT INTO mon_schema/ma_table (c2) VALUES ('abc')
Et voilà comme ça, ça fonctionne !


Gôm

PS : Merci Lionnel !
__________________
Quand on n'a pas d'tête, on a ...
ghohm est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/07/2007, 16h23   #4
Membre du Club
 
Inscription : février 2007
Messages : 56
Détails du profil
Informations forums :
Inscription : février 2007
Messages : 56
Points : 56
Points : 56
Tu peux aussi mettre "GENERATED BY DEFAULT", ce qui te permet de mettre une valeur, et, si tu n'en mets pas, c'est DB2 qui la génèrera.

Cela peut être utile lors de transfert de données entre 2 tables ou de rechargement de table (pour éviter de changer une facture de numéro, par exemple...)
clalevee est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 10h15.


 
 
 
 
Partenaires

Hébergement Web