Einfaches VBS Script

  • VBScript

Es gibt 7 Antworten in diesem Thema. Der letzte Beitrag () ist von petaod.

    Einfaches VBS Script

    Hallo!

    Ich hätte da eine Frage an die Profis!?
    Ich habe nur Grundkenntnisse in der Programmierung und kann komplexere SQL Abfragen schreiben!
    Mein Problem ist jetzt ich brauche ein VBS Script wo ich Daten aus einer SQL 2012 Datenbank auslese und in einer Einfachen Massagebox kurz ausgebe!
    Vielleicht kann mir dabei jemand helfen, vorallem wie ich die Verbindung zur DB herstelle, die SQL Abfrage selbst passe ich dann so an wie ich sie brauche!

    Details zu Datenbank:
    DB Servername = db-pet
    DB Name = orbittest
    User = OrbitReport
    Passwort = %12345

    Zum Testen würde ich eine einfache Abfrage starten, dessen Wert dann in einer Massagebox ausgegeben werden soll!

    strSQL = "SELECT ArtikelNr, ArtikelId FROM Artikel while (NOLOCK) WHERE ArtikelNr = 'Artikelnummer' "

    Das Script soll mal auf meinem lokalen Rechner laufen der Natürlich eine Verbindung zum DB-Server aufbauen kann!

    Das wärs eigentlich schon!
    Hab auch schon gegoogelt und herumprobiert aber irgendwie komme ich auf keinen grünen Zweig!
    Ich hoff ich habs klar beschrieben!

    Wär super wenn mir da wer helfen könnte, wenn ich mal den Anfang hab komm ich dann schon weiter!

    lg Roland

    *Topic verschoben*

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Marcus Gräfe“ ()

    Danke der Link hilft auch aber uuuuur kompliziert! ;)

    Ich schreib mal was ich bisher habe! Nicht lachen! ;)

    Sub Main()
    Dim dbconn, connect
    connect = "Driver={SQL Server};Server=db-pet;database=orbittest;uid=MeinUser;pwd=meinpasswort"
    Set dbconn = CreateObject("ADODB.Connection")
    Set objRecordset = CreateObject("ADODB.Recordset")
    dbconn.open connect

    objRecordset.Open "SELECT ArtikelNr, ArtikelId FROM Artikel WHERE ArtikelNr = 'Artikelnummer' "

    End Sub

    TJA, ich hoffe das wenigstens irgendwas stimmt! ;)

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „roland1881“ ()

    Irgendwer einen Hinweis ob es in etwa so passen könnte, bevor ich morgen weiter bastel?

    Wenn ich das Ganze jetzt noch mit dem verbinde(hab ich in diesem Forum gefunden habe) müssts funktionieren oder?

    Dim database, sql, recordset
    set database = CreateObject("ADODB.Connection")
    sql = "SELECT Klasse FROM Zutaten"
    database.ConnectionString ="XY"
    database.Open()
    recordset = database.Execute(sql)
    msgbox(recordset("Klasse"))

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „roland1881“ ()

    Ich habs jetzt folgendermaßen angepasst!
    Bis zur msgbox kommt zumindest keine Fehlermeldung aber mit der msgbox kommt folgendes:

    "Zeile 7, Zeichen 1, Fehler: Falsche Anzahl an Argumenten oder ungültige Eigenschaftszuweisung
    Quelle: Laufzeitfehler im VB Scritp

    Das wär mein Code:

    Dim database, sql, recordset
    set database = CreateObject("ADODB.Connection")
    sql = "SELECT ArtikelNr, ArtikelId FROM Artikel WHERE ArtikelNr = 'Artikelnummer' "
    database.ConnectionString ="Driver={SQL Server};Server=db-pet;database=orbittest;uid=MeinUser;pwd=meinpasswort"
    database.Open()
    recordset = database.Execute(sql)
    msgbox(recordset("Artikel"))

    roland1881 schrieb:

    msgbox(recordset("Artikel"))

    In VBS werden Objekte mit Set zugewiesen
    Set RecordSet = Database.Execute(sql)


    Und die Parameter von Methoden werden nicht in Klammern übergeben
    MsgBox RecordSet("Artikel")

    Tipp:
    Verwende eine vernünftige IDE wie z.B. VbsEdit.
    Oder debugge deine Scripts in Excel-VBA.
    --
    If Not Program.isWorking Then Code.Debug Else Code.DoNotTouch
    --