IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBA Project Discussion :

Mise à jour SQL Server avec Paramètre [PR-2003]


Sujet :

VBA Project

  1. #1
    Membre régulier
    Inscrit en
    Mars 2007
    Messages
    221
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 221
    Points : 88
    Points
    88
    Par défaut Mise à jour SQL Server avec Paramètre
    Bonjour

    Je vais une requête de mise à jour en passant des paramètres via 'create parameter'
    Tous mes paramètres sont bien renseignés (j'ai vérifier via un espion dans le debugger) mais lors de la mise, le champ mis à jour dans ma requête a toujours pour valeur "128".... J'ai modifié l'ordre des champs et c'est toujours parel...
    Je ne sais pas plus où chercher...un peu d'aide svp

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    Set cmdMaj = New ADODB.Command
                    Set cmdMaj.ActiveConnection = cnx.getCnx
     
                    requete = "UPDATE " & cnx.getBase & ".MACHINEFL"
                    requete = requete & " SET ZPLAEXE_0=?"      'Exercice iExercice
                    'requete = requete & " ,ZPLADEB_0=?"         'Date debut de la tâche ActiveProject.Tasks(i).Start
                    'requete = requete & " ,ZPLAFIN_0=?"         'Date de fin de la tâche ActiveProject.Tasks(i).Finish
                    If pValide Then
                        requete = requete & ",ZPLAVALINT_0 = 2"
                    End If
                    requete = requete & " WHERE LOT_0=?"            'Lot ActiveProject.Tasks(i).Text2
                    requete = requete & " AND YNUMLIG_0=?"          'N° de ligne ActiveProject.Tasks(i).Text3
                    requete = requete & " AND ZPLAVALINT_0 <> 2 "
     
                    With cmdMaj
                        .CommandText = requete
     
                        'Date de début
                        'Set pm = .CreateParameter("dateDebut", adDBTimeStamp, adParamInput, 20)
                        'pm.Value = Format(ActiveProject.Tasks(i).Start, "dd/mm/yyyy") 'ActiveProject.Tasks(i).Start
                        'pm.Value = ActiveProject.Tasks(i).Start 'ActiveProject.Tasks(i).Start
                        '.Parameters.Append pm
     
                        'Date de fin
                        'Set pm = .CreateParameter("dateFin", adDBTimeStamp, adParamInput, 20)
                        'pm.Value = Format(ActiveProject.Tasks(i).Finish, "dd/mm/yyyy")
                        'pm.Value = ActiveProject.Tasks(i).Finish
                        '.Parameters.Append pm
     
                        'Exercice
                        Set pm = .CreateParameter("exercice", adVarChar, adParamInput, 10)
                        pm.Value = iExercice
                        .Parameters.Append pm
     
                        'Lot
                        Set pm = .CreateParameter("lot", adVarChar, adParamInput, 15)
                        pm.Value = ActiveProject.Tasks(i).Text2
                        .Parameters.Append pm
     
                        'N° de ligne
                        Set pm = .CreateParameter("ligne", adVarChar, adParamInput, 15)
                        pm.Value = ActiveProject.Tasks(i).Text3
                        .Parameters.Append pm
                    End With
     
                    On Error GoTo erreurrequete
                    cmdMaj.Execute iAffected, adCmdText & adExecuteNoRecords

  2. #2
    Membre régulier
    Inscrit en
    Mars 2007
    Messages
    221
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 221
    Points : 88
    Points
    88
    Par défaut
    Personne ne peut m'aider...

    J'ai fait une autre requête.
    Sur celle-ci en passant par les 'parameters', la requête ne fais pas de mise à jour. Sans passer par les 'parameters', ça fonctionne....

    Aidez-moi svp....

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
           requete = "UPDATE " & cnx.getBase & ".MACHINEFL"
                    requete = requete & " SET ZPLAVALEXT_0= 2"
                    requete = requete & " FROM " & cnx.getBase & ".MACHINEFL"
                    requete = requete & " WHERE LOT_0=?"            'N° de lot   ActiveProject.Tasks(i).Text2
                    requete = requete & " AND YNUMLIG_0=?"          'N° de ligne ActiveProject.Tasks(i).Text3
                    requete = requete & " AND ZPLAVALINT_0 = 2 AND ZPLAVALEXT_0 <> 2"

  3. #3
    Membre régulier
    Inscrit en
    Mars 2007
    Messages
    221
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 221
    Points : 88
    Points
    88
    Par défaut
    J'ai trouvé la solution qui servira peut être à quelqu'un....

    Il faut mettre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    cmdMaj.Execute iAffected
    et non pas
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    cmdMaj.Execute iAffected, adCmdText & adExecuteNoRecords
    En enlevant
    adCmdText & adExecuteNoRecords
    , ça fonctionne mais je ne sais pas pourquoi...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Débutant] Mettre a jour une table SQL server avec un datagridview
    Par gilles_906 dans le forum VB.NET
    Réponses: 1
    Dernier message: 20/05/2015, 02h53
  2. Mise à jour SQL Server 7
    Par dev-man dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 06/10/2006, 14h51
  3. Connexion à SQL Server avec ASP
    Par ayobo dans le forum ASP
    Réponses: 3
    Dernier message: 25/05/2004, 17h06
  4. attaquer base sql server avec easyphp sous windows
    Par jarod71 dans le forum MS SQL Server
    Réponses: 7
    Dernier message: 11/12/2003, 14h17
  5. Réponses: 3
    Dernier message: 18/11/2002, 16h36

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo