Ce code vous permet de décomposer puis de recomposer une requête SQL (INSERT ou UPDATE) de votre code VB.
Vous allez me dire, mais pourquoi faire !?
Et bien, c'est tout simple, vous n'en avez jamais eu marre de rechercher la valeur qui doit être modifier dans un INSERT pendant une heure. Ou alors comment ajouter facilement une valeur. Comment transformer un INSERT en UPDATE et vice versa.
Avec ce petit code, vous le faites facilement. Explication :
- Copier votre requête SQL de votre code en VB et coller la dans le décomposeur. Celle ci doit être en une seule ligne, et j'insiste la dessus !
- Cliquer sur le bouton Décomposer,
- Modifier vos paramètres de la requête facilement(en effet, vous avez MaColonne = MaValeur,
- Sélectionnez le type de requête que vous désirez générer,
- Cliquer sur le bouton Recomposer, et hop vous avez votre requête dans le presse papier.
Voici un exemple de requête parfaitement gérer par mon appli :
"INSERT INTO F_Doc(AR_REF ,CT_NUM ,DL_DATEBL ,DL_DESIGN ,DL_QTEBC ,DL_QTEBL ,DL_TAXE2 ,DL_TAXE3 ,DL_TNOMENCL ,DL_TREMEXEP ,DL_TREMPIED ,DL_TTC ,DL_TYPEPL ,DL_TYPETAUX1 ,DO_REF ,DO_TYPE ,MAITRE_OUVRAGE ,CHANTIER ,IMMATRICULATION) VALUES( '" + sType + "', '" & CStr(sValeur(TI_Entreprise)) & "', '{d " & DateBL & "}', '" & DL_DESIGN & "', " & CStr(sValeur(TI_Penalite)) & ", " & CStr(sValeur(TI_Penalite)) & ", 0, 0, 0, 0, 0, 0, 0, 0, '', 2, '" & CStr(sValeur(TI_MOuvrage)) & "', '" & CStr(sValeur(TI_Chantier)) & "', '" & CStr(sValeur(TI_Immat)) & ")"
5 avril 2003 à 00:11
4 avril 2003 à 20:12
set rs = createobject("Scripting.FileSystemObject")
' ou (si les references VB sont bien renseignées)
' dim rs as new Scripting.FileSystemObject
' De memoire il me semble que ce sont ces valeurs là :
rs.CursorLocation = 3
rs.CursorType = 2
rs.LockType = 3
rs.open "SELECT * FROM ma_table WHERE ma_condition"
if not rs.eof then
' ajoute une ligne si aucune ligne n'est trouvée
rs.addnew
end if
rs("mon_champ_1") = ma_valeur1
rs("mon_champ_2") = ma_valeur2
rs("mon_champ_3") = ma_valeur3
' ...
rs.update
rs.close
set rs = nothing
' j'ai ecris ce code de tete, sans le tester. Il se peut qu'il y ait des erreurs. Mais en tout cas j'utilise cette technique très souvent.
Cela permet de ne pas avoir une requete "UPDATE" ou "INSERT" de 3 kilometres
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.