Lösung für Datenbankabfrage[VB 2010] in VBScript übersetzen

  • VBScript

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

    Lösung für Datenbankabfrage[VB 2010] in VBScript übersetzen

    Hallo Leute,

    Sorry für das ausgraben dieses Themas.

    Der Quellcode ist genau das was ich benötige.

    Jedoch programmiere ich in Visual Basic Script mit einer Access Datenbank.

    Bin noch relativ neu in der Programmiersprache und Allgemein Programmierung.

    Könnte jemand für mich die Lösung in VBScript übersetzen?

    Er gibt mir immer zurück, dass ExecuteReader() nicht ausgeführt werden kann. :/

    VB[2010] Lösung:

    Visual Basic-Quellcode

    1. Dim con As New Odbc.OdbcConnection
    2. Dim cmd As New Odbc.OdbcCommand
    3. 'Verbindung zu einer ODBC Verbindung herstellen
    4. con.ConnectionString = "Anmeldedaten"
    5. cmd.Connection = con
    6. Dim iAnzahl As Integer
    7. 'DB Abfrage, Wichtig hier Count (*) anzugeben um eine Zahl zurück zu bekommen
    8. cmd.CommandText =
    9. "SELECT count (*) FROM O.ACT ACT WHERE ACT.TIME_START > '24.03.2011' and act.first_car = '90' " &
    10. "and act.finished = '7'"
    11. con.Open()
    12. Dim reader As Odbc.OdbcDataReader
    13. reader = cmd.ExecuteReader()
    14. While reader.Read()
    15. iAnzahl = Convert.ToInt32(reader(0))
    16. End While
    17. reader.Close()
    18. con.Close()
    19. 'Ausgabe des Ergebnisses
    20. MessageBox.Show(iAnzahl)


    Meine versuchte Lösung:

    Visual Basic-Quellcode

    1. Sub TicketCounter
    2. cmd.CommandText = "SELECT COUNT(*) FROM Tabelle WHERE Bedingung"
    3. reader = cmd.ExecuteReader
    4. while reader.Read()
    5. nTicket_60 = CInt(reader(0))
    6. Wend
    7. msgbox nTicket_60
    8. reader.Close()
    9. End Sub


    Connections usw sind natürlich alle deklariert und eröffnet vor dem Ausführen.
    Ist ein ziemlich großes Programm.

    Visual Basic-Quellcode

    1. '### Objekte für die Datenbank definieren
    2. Set conn = CreateObject("ADODB.Connection")
    3. Set cmd = CreateObject("ADODB.Command")
    4. '### Provider für die DB
    5. conn.Provider = "Microsoft.Jet.OLEDB.4.0"
    Für alle die es interessiert.
    Hab es jetzt anders gelöst :)
    Klappt auch wunderbar.. auch wenn es vllt unsauber ist.

    Visual Basic-Quellcode

    1. Sub Counter
    2. sqlCounter = "SELECT Feld FROM Tabelle WHERE Bedingung
    3. '### Recordset öffnen und mit den Datensätzen aus der Datenbank füllen
    4. rs.Open sqlCounter, conn
    5. '### Counter zurücksetzen
    6. Zähler = 0
    7. '### Tabelleneinträge zählen
    8. do until rs.EOF
    9. Zähler=Zähler+1
    10. rs.MoveNext
    11. loop
    12. rs.close
    13. End Sub


    Variablen müsst ihr natürlich deklariert haben:

    Visual Basic-Quellcode

    1. '### Objekte für die Datenbank definieren
    2. Set conn = CreateObject("ADODB.Connection")
    3. Set cmd = CreateObject("ADODB.Command")
    4. set rs = CreateObject("ADODB.recordset")
    5. '### Provider für die DB
    6. conn.Provider = "Microsoft.Jet.OLEDB.4.0"