Un INSERT ça va, 2 INSERT bonjour le tracas ! ! !

cmasson Messages postés 4 Date d'inscription jeudi 10 mars 2005 Statut Membre Dernière intervention 4 juin 2009 - 22 déc. 2008 à 16:05
cmasson Messages postés 4 Date d'inscription jeudi 10 mars 2005 Statut Membre Dernière intervention 4 juin 2009 - 28 déc. 2008 à 14:47
bonjour à tous,

Je développe un site ASP.net / VB.net avec sql server express 2005 et Visual web Dev 2008 en version light. Je dois faire un INSERT dans une table à partir de 2 autres tables et en fonctions de 6 paramètres. Je fais un SELECT sur 2000 lignes d'une table montage_colis avec les références colis 84 lignes pour alimenter ma table devis.
je constate que:

Lors des tests requêtes depuis la base (avec l'éditeur de VS 2008) et en saisissant à la main les 6 paramêtres qui me sont demandés, tout est OK et j'insère mes enregistrement.
ensuite :
Depuis un formulaire, ou j'ai mes paramètres (label, DropDownList), seul 1 INSERT requête fonctionne lorsque la table devis n'a aucun enregistrement pour un compte client. CAD en fonction des mes comptes, je ne peux générer qu'un seul enregistrement par compte de 17 à 24 ligne de code produit ... puis impossible de refaire un second INSERT, que ce soit pendant ou en nouvelle session. En résumé j'allimente chacun de mes comptes au premier INSERT puis plus rien. "QUID"

J'ai fait 3 manip de code pour l'INSERT, ayant à chaque fois les mêmes tests et résultats et 3 interfaces différentes:

1) méthode SQLDATASOURCE;
2) méthode en pure VB avec déclaration des paramètres avec la connexion;
3) méthode procédure stockée, que j'appelle avec mon code VB

je livre la requête:

INSERT INTO devis
(nom_compte, numero, valide, code_interne, code_colis, machinerie, entre_niveau, nombre_niveau, fin_course, type_cabine, quantite, date)

SELECT    
@nom_compte AS Expr1, 'CCC0000' AS Expr4, 'non' AS Expr2, montage_colis.code_toto, colis.code_colis, montage_colis.machinerie,montage_colis.entre_niveau, montage_colis.nombre_niveau, montage_colis.fin_course, montage_colis.type_cabine, montage_colis.quantite, CURRENT_TIMESTAMP AS Expr3

FROM
colis INNER JOIN montage_colis
ON
colis.code_toto = montage_colis.code_toto
WHERE
(montage_colis.machinerie = @machinerie)
AND (montage_colis.entre_niveau = @entre_niveau)
AND (montage_colis.fin_course = @fin_course)
AND (montage_colis.nombre_niveau = @nombre_niveau)
AND (montage_colis.type_cabine = @type_cabine)

certains noms sont changés pour cause de diffusion mais bon cette requête fonctionne dans l'éditeur, et une seul eet unique fois ! ! !

Je travaille à distance sur un server d'hébergement, je teste le site en ligne et en mode localhost ayant les mêmes résultats.

Si quelqu'un à une idée ...

merci d'avance

ZEPP 66 
A voir également:

2 réponses

SuperBouly Messages postés 410 Date d'inscription dimanche 1 février 2004 Statut Membre Dernière intervention 8 mai 2010
28 déc. 2008 à 08:56
bonjour,
tu devrais poster chez http://www.sqlfr.com/

SuperBouly
0
cmasson Messages postés 4 Date d'inscription jeudi 10 mars 2005 Statut Membre Dernière intervention 4 juin 2009
28 déc. 2008 à 14:47
Merci SuperBouly,

 j'y  "copy and paste" de ce lien ;o

ZEPP 66 
0
Rejoignez-nous