Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

faire migrer une table vers une autre qui n'a pas les même nom de champs.

6 réponses
Avatar
Daniel
Bonjour,

Je fais évoluer une veille application, j'ai créé une autre table à lequel,
j'ai renommé et ajouter des champs, j'ai refais les procédures stocké. D'ici
quelques jours j'aurai besoin de faire migrer les données de l'une à l'autre
en gardant les mêmes Id.

Je n'ai aucune idée de la façon dont je dois mi prendre.

Quelqu'un pourrais t il déguillé ou me fournir des informations concernant
ce type de cas.

En vous remerciant par avances pour vos informations.

Cordialement,

Daniel

6 réponses

Avatar
TedIF
Daniel a pensé très fort :
Je fais évoluer une veille application, j'ai créé une autre table à lequel,
j'ai renommé et ajouter des champs, j'ai refais les procédures stocké. D'ici
quelques jours j'aurai besoin de faire migrer les données de l'une à l'autre
en gardant les mêmes Id.



Si l'ID dans la nouvelle table est de type compteur automatique, il
faut le désactiver puis exécuter une requette du genre :

INSERT INTO NOUVELLE_TABLE (ID, C1,C2....)
SELECT ID,
ANCIEN_CHAMP AS C1,
C2....
FROM ANCIENNE_TABLE
WHERE ....

Ne pas oublier de réactiver le compteur.

--

Dominique
Avatar
Daniel
Merci pour les infos.

cordialement

Daniel
"TedIF" a écrit dans le message de news:

Daniel a pensé très fort :
Je fais évoluer une veille application, j'ai créé une autre table à
lequel, j'ai renommé et ajouter des champs, j'ai refais les procédures
stocké. D'ici quelques jours j'aurai besoin de faire migrer les données
de l'une à l'autre en gardant les mêmes Id.



Si l'ID dans la nouvelle table est de type compteur automatique, il faut
le désactiver puis exécuter une requette du genre :

INSERT INTO NOUVELLE_TABLE (ID, C1,C2....)
SELECT ID,
ANCIEN_CHAMP AS C1,
C2....
FROM ANCIENNE_TABLE
WHERE ....

Ne pas oublier de réactiver le compteur.

--

Dominique



Avatar
synopsis
SET IDENTITY_INSERT tablename OFF

SET IDENTITY_INSERT tablename ON

Pour activé/désactivé le compteur automatique.




"TedIF" a écrit dans le message de news:

Daniel a pensé très fort :
Je fais évoluer une veille application, j'ai créé une autre table à
lequel, j'ai renommé et ajouter des champs, j'ai refais les procédures
stocké. D'ici quelques jours j'aurai besoin de faire migrer les données
de l'une à l'autre en gardant les mêmes Id.



Si l'ID dans la nouvelle table est de type compteur automatique, il faut
le désactiver puis exécuter une requette du genre :

INSERT INTO NOUVELLE_TABLE (ID, C1,C2....)
SELECT ID,
ANCIEN_CHAMP AS C1,
C2....
FROM ANCIENNE_TABLE
WHERE ....

Ne pas oublier de réactiver le compteur.

--

Dominique



Avatar
synopsis
DBCC CHECKIDENT
Contrôle la valeur d'identité courante pour la table spécifiée et, si
nécessaire, corrige cette valeur.

Syntaxe
DBCC CHECKIDENT
( 'table_name'
[ , { NORESEED
| { RESEED [ , new_reseed_value ] }
}
]
)

"TedIF" a écrit dans le message de news:

Daniel a pensé très fort :
Je fais évoluer une veille application, j'ai créé une autre table à
lequel, j'ai renommé et ajouter des champs, j'ai refais les procédures
stocké. D'ici quelques jours j'aurai besoin de faire migrer les données
de l'une à l'autre en gardant les mêmes Id.



Si l'ID dans la nouvelle table est de type compteur automatique, il faut
le désactiver puis exécuter une requette du genre :

INSERT INTO NOUVELLE_TABLE (ID, C1,C2....)
SELECT ID,
ANCIEN_CHAMP AS C1,
C2....
FROM ANCIENNE_TABLE
WHERE ....

Ne pas oublier de réactiver le compteur.

--

Dominique



Avatar
Daniel
bonjour,

Doublement merci pour toutes ces infos.

cordialement,

Daniel

"synopsis" a écrit dans le message de news:
42d1935e$0$5247$
DBCC CHECKIDENT
Contrôle la valeur d'identité courante pour la table spécifiée et, si
nécessaire, corrige cette valeur.

Syntaxe
DBCC CHECKIDENT
( 'table_name'
[ , { NORESEED
| { RESEED [ , new_reseed_value ] }
}
]
)

"TedIF" a écrit dans le message de news:

Daniel a pensé très fort :
Je fais évoluer une veille application, j'ai créé une autre table à
lequel, j'ai renommé et ajouter des champs, j'ai refais les procédures
stocké. D'ici quelques jours j'aurai besoin de faire migrer les données
de l'une à l'autre en gardant les mêmes Id.



Si l'ID dans la nouvelle table est de type compteur automatique, il faut
le désactiver puis exécuter une requette du genre :

INSERT INTO NOUVELLE_TABLE (ID, C1,C2....)
SELECT ID,
ANCIEN_CHAMP AS C1,
C2....
FROM ANCIENNE_TABLE
WHERE ....

Ne pas oublier de réactiver le compteur.

--

Dominique







Avatar
Daniel
Bonjour,

Merci pour l'info, j'ai juste une petite rectification.
"On" desactive le compteur automatique et "Off" réactive le compteur.

cordialement,

Daniel

"synopsis" a écrit dans le message de news:
42d192e1$0$4722$
SET IDENTITY_INSERT tablename OFF

SET IDENTITY_INSERT tablename ON

Pour activé/désactivé le compteur automatique.




"TedIF" a écrit dans le message de news:

Daniel a pensé très fort :
Je fais évoluer une veille application, j'ai créé une autre table à
lequel, j'ai renommé et ajouter des champs, j'ai refais les procédures
stocké. D'ici quelques jours j'aurai besoin de faire migrer les données
de l'une à l'autre en gardant les mêmes Id.



Si l'ID dans la nouvelle table est de type compteur automatique, il faut
le désactiver puis exécuter une requette du genre :

INSERT INTO NOUVELLE_TABLE (ID, C1,C2....)
SELECT ID,
ANCIEN_CHAMP AS C1,
C2....
FROM ANCIENNE_TABLE
WHERE ....

Ne pas oublier de réactiver le compteur.

--

Dominique