Dupliquer un enreg dans BD

gwiwi Messages postés 127 Date d'inscription lundi 8 juillet 2002 Statut Membre Dernière intervention 4 janvier 2007 - 29 sept. 2002 à 09:16
BasicInstinct Messages postés 1471 Date d'inscription mardi 5 février 2002 Statut Membre Dernière intervention 20 octobre 2014 - 29 sept. 2002 à 21:51
Bonjour,

J'ai besoin de dupliquer dans une base de donnée un enregistrement de 50 champs, mais comment faire pour ne pas avoir a se retaper les 50 champs. N'y a t-il pas une commande pemettant de dupliquer automatiquement un record.

Derniere petite precision, c'est une table comprenant des factures avec un index sans doublon et je souhaite donc dupliquer une facture mais AVEC UN AUTRE NUMERO.

Merci.

4 réponses

BasicInstinct Messages postés 1471 Date d'inscription mardi 5 février 2002 Statut Membre Dernière intervention 20 octobre 2014 12
29 sept. 2002 à 18:56
insert into matable select * from matable where MaCle =MaValeur

mais faut que MaCle soit en autoIncrement, et normalement ca doit marcher
0
gwiwi Messages postés 127 Date d'inscription lundi 8 juillet 2002 Statut Membre Dernière intervention 4 janvier 2007 1
29 sept. 2002 à 19:52
Merci tout d'abord de ton message, le probleme est que macle (dans ton exemple) n'est pas en autoincrement dans ma base. Quelqu'un voit une autre solution ????

Merci
0
BasicInstinct Messages postés 1471 Date d'inscription mardi 5 février 2002 Statut Membre Dernière intervention 20 octobre 2014 12
29 sept. 2002 à 21:49
fait 1 select de ce que tu veux garder dans 1 recordset RS

et une deuxieme requete

INSERT INTO MaTable (MaCle,Champs1,Champs2............,ChampsN) values (NveauNum, RS(1),RS(2).............

c long a ecrire, alors le + simple & le + souple pour reutilisation est de faire une fonction qui genere ta requete sql du style

MaRequete="insert into ...... values (MaCle,
for I=1 to rs.Fields.Count
MaRequete=MaRequete & rs(I).value & ","
next
MaRequete=left(MaRequete,len(MaRequete)-1)
0
BasicInstinct Messages postés 1471 Date d'inscription mardi 5 février 2002 Statut Membre Dernière intervention 20 octobre 2014 12
29 sept. 2002 à 21:51
Put1 désolé je repond n'importe ou :)

heu, la 2eme solution proposée n'est pas testée, alors si ca marche pas, j'en suis désolé. Mais normalement la logique est bonne..
0
Rejoignez-nous