Insertions multiples

rooridge Messages postés 28 Date d'inscription mardi 13 avril 2004 Statut Membre Dernière intervention 14 juillet 2006 - 17 juin 2005 à 15:26
cs_dragon Messages postés 2336 Date d'inscription samedi 14 juillet 2001 Statut Membre Dernière intervention 5 mai 2009 - 17 juin 2005 à 18:11
Salut a tous,

j'ai une petite colle a vous poser. Voila j'ai une appli VB6 qui communique avec SQL Server et je souhaite réaliser la chose suivante : je dois restaurer la base de données à un état antérieur (un peu sur le principe de restauration windows) et pour se faire je delete toutes les lignes concernées pour ensuite réinsérer les bonnes données contenues dans une collection côté VB.
Or, le risque d'une telle manouevre est le suivant : si les delete fonctionnent correctement mais que pour une raison inconnue les insert plante je perds mes données. Pour parer à cette éventualité j'appelle une seule procédure stockée ou je confine les delete et les insert entre un "BEGIN TRANS ... COMMIT TRANS". Mais le problème c'est que je dois pouvoir faire des insert multiples du même coup (c'est à dire insérer toutes les données de ma collection depuis le confinement).

Ma question : est-il possible de passer une collection VB en paramètres à la procédure stockée de manière à lancer la moulinette d'insertion coté serveur ?

PS : je sais que ce post déborde un peu du cadre de VB mais bon il est difficile de trouver un forum qui fasse du VB et du SQL. Si vous avez des infos à ce propos je suis preneur .

Rooridge.

3 réponses

cs_dragon Messages postés 2336 Date d'inscription samedi 14 juillet 2001 Statut Membre Dernière intervention 5 mai 2009 6
17 juin 2005 à 15:35
moi ce que j'ai fait a ma job
c'est je créé une base de donnée (point de restoration) qui est backuper pendant la nuit en plus

dans une autre base de donnée, je stocke toutes les requêtes SQL exécuté
lors de l'ouverture, les base se mette a jour et a chaque nuit, un nouveau point de restoration est créé, juste avant que le serveur se soit backuper

Donc j'efface rien, je fais juste prendre une vieille base de données et je lui renvoi les requête dedans


-------------------------------------------------
Dragon alias aussi Waxime mais bon, pas le gout de refaire un nouveau profil lol
-------------------------------------------------
0
rooridge Messages postés 28 Date d'inscription mardi 13 avril 2004 Statut Membre Dernière intervention 14 juillet 2006 1
17 juin 2005 à 15:44
Oups je vois que j'ai oublié une partie d'explication (qui est pourtant deja assez longue) : en fait la restauration est effectuée à la demande de l'utilisateur dans le cas ou il fait une erreur de saisie, cela lui permet d'annuler sa(ses) dernière(s) saisie(s).
Mon modèle ne me permet pas de défaire de manière simple les données erronées que l'utilisateur a généré (j'ai un système de cumuls complexes derrière).

Merci de ton intervention quoi qu'il en soit,
Rooridge.
0
cs_dragon Messages postés 2336 Date d'inscription samedi 14 juillet 2001 Statut Membre Dernière intervention 5 mai 2009 6
17 juin 2005 à 18:11
non tu as pas oublier la partie, il y a un bug sur codesource, déplace ton curseur avant de poster, ça évite d'effacer le dernier paragraphe


tu as la méthode rollback qui peut faire l'affaire, mais j'y fais pas confiance

ce que j'avais oublier de dire, en plus de stocker les requête sql, je stock aussi les usagers, la form où il se trouve (me.text) et la méthode

bon oki, ça fasi beaucoup a stocker, masi après je peux revenir en arrière a tout moment, même sur une modif qui date de plusieurs heure ou même plusieurs jours (avec l'aide des backup système)


-------------------------------------------------
Dragon alias aussi Waxime mais bon, pas le gout de refaire un nouveau profil lol
-------------------------------------------------
0
Rejoignez-nous