Dupliquer la valeur du champs identity dans un autre champs de la même table au sein de l'instruction insert
Le
Jean-Francois Courteau
Comment faire pour éviter d'utiliser une instruction update utilisant le
retour du @@identity après avoir exécuté l'insertion ?
Merci d'avance
Jean-François Courteau
retour du @@identity après avoir exécuté l'insertion ?
Merci d'avance
Jean-François Courteau

Poser une question


Pouvez-vous m'expliquer l'intéret d'avoir deux fois la même info au sein de
la même table (identity ou pas d'ailleur) ???
Phil.
________________________________________________________
Philippe TROTIN http://blogs.msdn.com/ptrotin
Microsoft Services France http://www.microsoft.com/france
"Jean-Francois Courteau" news:OH$
fournise pour procéder au transfert des données de la source vers cette
nouvelle db conçue par un consultant externe. Soit de me demander pourquoi
duppliquer un champ. Il sagit d'un lien interne à cette table. En fait ce
même déccor se retrouve en chacune de ces tables de son système. Selon son
explication, ce mécanisme sert à des fins d'historique des données. Disons
que l'on parle d'une table de clients, le premier enregistrement concernant
un client donné retrouvera la valeur de sa clé duppliqué au sein d'un champ
qui est en liaison interne avec la clé de la table. Si une modification à
lieu, une nouvelle insertion est faite et le nouvel enregistrement se voit
recevoir la valeur de la clé de l'enregistrement initial concernant le
client au sein du champ lié à la clé primaire. Ce champ sert donc à
retrouver toute les occurences formant l'historique d'un client. Ce n'est
pas ce que j'aurais appliqué pour obtenir le même résultat mais ca reste
justifiable comme façon de faire. Par contre ca me force à une requête de
mise à jour après mes insertions au transfert vers son système ce qui
ralenti de beaucoup mon processus.
Jean-François Courteau
colonne, mais soit l'identity, soit l'identity du client d'origine.
Donc il faut peut-etre mettre un trigger qui récupérera l'identity de
l'enreg en cours si la colonne est vide, sachant que cette colonne ne sera
pas vide dans le cas où c'est le numéro d'un autre client d'origine.
br
"Jean-Francois Courteau" news:#
pourquoi
concernant
champ
script de transfert qui emplira ce nouveau dépôt à partir de la db d'un
ancien système. Comme dans le cas de mon transfert, les occurences seront
considérées comme les premières insertions de chaque entité, la valeur de ce
fameux champs doit être égale à celui du champ identity dans tout les cas.
Je voudrais donc pouvoir utiliser la valeur générée au sein du champ
identity au sein de cet autre champ, directement en ma requête d'insertion.
Je pense avoir la seule solution possible en main actuellement soit :
insert into MaTable(ChampReplicatIdent) values(@@identity + ValeurIncrement)
Les solutions sont souvent cette simplicité qui nous pend au bout du nez lol
Jean-François Courteau
"bruno reiter [MVP]" de news:
cette
fut
ce
son
Disons
à
voit
n'est
de
au moment de son utilisation puisque plusieurs tables sont affectées dans le
cadre d'une occurence transférée ce qui fait en sorte que le @@identity
contient la dernière insertion dans une autre table que celle dont je désire
la valeur du champ identity de la dernière insertion.
Si jamais vous pensiez à quelque chose je vous en serait reconnaissant mais
je commence à me résigner à cette solution semi-viable que m'apporte
l'utilisation d'un trigger à chaque table.
Jean-François Courteau