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

VBScript Discussion :

Script Connexion base mssql,résultat dans fichier csv


Sujet :

VBScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    829
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 829
    Par défaut Script Connexion base mssql,résultat dans fichier csv
    Bonjour à tous,

    Je voudrait savoir si il est possible de créer un script vbs pour:
    - se connecter a une base mssql (2000),
    - récupérer le résultat
    - créer un fichier CSV et le remplir avec le résultat de la base.

    Sous excel j'arrive à interroger une base SQL et a retourner le résultat dans mon excel.

    voici le bout code que j'utilise:

    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
     
    Sub Macro1()
     
    Dim valcel As String
    Dim cnBat As ADODB.Connection
    Set cnBat = New ADODB.Connection
    Dim strConn As String
    strConn = "PROVIDER=SQLOLEDB;"
    strConn = strConn & "DATA SOURCE=**;UID=**;PWD=*;DATABASE=***"
    cnBat.Open strConn
     
     
     
     
    '------------------
    Dim rsBat As ADODB.Recordset
    Set rsBat = New ADODB.Recordset
     
    With rsBat
         .ActiveConnection = cnBat
         .Open "SELECT emp, puntoventa FROM tgptoventa"
     
                     Do While Not rsBat.EOF
     
    Loop
     
         .Close
     
     
     
    End With
     
     
     
    cnBat.Close
    Set rsBat = Nothing
    Set cnBat = Nothing
    End Sub
    Mon script devra s’exécuter tout seul sur un serveur (sans excel) tout les jours.

    Par ou je doit commencer pour réaliser la connexion avec ma base SQL en vbs.
    Auriez-vous des exemple?

    Merci

    guigui69

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    829
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 829
    Par défaut
    Bonjour,

    voici mon fichier si ca peut aider quelqu'un:

    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
    48
    49
    50
    51
    52
    53
    54
     
    Dim fso,of1
    Set conn = CreateObject("ADODB.Connection")
    Set rs = CreateObject("ADODB.Recordset")
    Set fso = CreateObject("Scripting.FileSystemObject")
    Const ForReading = 1, ForWriting = 2, ForAppending = 8
    conn.Open "PROVIDER=SQLOLEDB;DATA SOURCE=IP;UID=LOGIN;PWD=PASSWORD;DATABASE=BDD"
    'msgbox "OK"
     
     
    chemin= Replace(WScript.ScriptFullName, WScript.ScriptName, "")
     
     
    'MsgBox chemin
     
     
    Set f = fso.OpenTextFile("web.sql", ForReading)
     une_variable = f.ReadAll
     f.Close
     
    rs.Open une_variable, conn
     
    If rs.EOF Then
    'msgbox "NOK"
    Else
     
    '--------------------------
    if fso.FileExists("web.csv") then 
    Set of1 = fso.GetFile("web.csv")
     
    'msgbox (chemin &"archives\web-dc-" & Replace( Left(of1.DateCreated,10),"/", "-")  & "-dm-" &  Replace( Left(Date(),10),"/", "-") & "-" & Replace( Left(Time(),10),":", "-") & ".csv")
    of1.Move chemin &"archives\web-dc-" & Replace( Left(of1.DateCreated,10),"/", "-")  & "-dm-" &  Replace( Left(Date(),10),"/", "-") & "-" & Replace( Left(Time(),10),":", "-") & ".csv"
     
    End if 
    '----------------------------------
     Set o = fso.OpenTextFile("web.csv", ForWriting,true)
     
    Do While NOT rs.Eof   
      o.write(   rs("Site") &";"&   rs("No_VN") &";"&    rs("Chasis")& ";"&   rs("code_marque")& ";"&   rs("Marque")& ";"&   rs("CodeVersion")& ";"&   rs("Version")& ";"&   rs("Code_teinte")& ";"&   rs("Teinte")& ";"&   rs("tarif")& ";"&   rs("date_tarif")& ";"&   rs("Codes_options")& ";"&  rs("Libelles_Options")& ";"&  rs("Anciennete")& ";"&   rs("CodeSellerie")& ";"&  rs("SellerieInterieure")& ";"&    rs("genre")&   vbCrLf )
    rs.MoveNext    
    Loop
     o.Close
     
     Dim shell
    Set shell = CreateObject("WScript.Shell")
    'msgbox ("ftp -n -s:" & chemin & "ftp.txt")
    shell.Run  "ftp -n -s:""" & chemin & "ftp.txt""", 0
    End If 
     
     
     
     
    rs.Close
    Set rs=nothing
    Le script:
    -Se connecter a la BDD.
    - récupère la requête contenue dans un fichier txt.
    - exécute la requête puis récupère le résultat.
    -vérifier si le fichier existe.
    - Copie de sauvegarde du précédent fichier.
    - Alimente le fichier.
    - Enregistrer.
    - Et envoi le fichier en FTP.

    guigui69

Discussions similaires

  1. [MySQL] Convertir résultat timestamp bdd avant envoi dans fichier csv
    Par Bboop dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 20/01/2015, 14h03
  2. Script extraction données dans fichier CSV
    Par nollier dans le forum VBScript
    Réponses: 18
    Dernier message: 20/06/2008, 09h32
  3. Problème de séparateur dans fichier CSV
    Par mbibim63 dans le forum Excel
    Réponses: 4
    Dernier message: 05/07/2007, 08h29
  4. Exporter résultats dans fichier excel [forms 6i]
    Par OUALASS dans le forum Forms
    Réponses: 4
    Dernier message: 30/05/2006, 19h38
  5. Sauvegarde de données dans fichier csv
    Par issou dans le forum C
    Réponses: 1
    Dernier message: 22/12/2005, 08h36

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