DB Connect Oracle 11

  • Hallo zusammen,

    ich bin Anfänger und habe bisher nur in bestehenden AutoIT Scripten kleine Änderungen und Anpassungen gemacht. Nun mächte ich ein Script erstellen, das eine Verbindung zu einer Oracle Datenbank aufbaut und ein Select Statement abfeuert. Das Ergebnis des Statements möchte ich dann im Script weiter verwenden.
    Zu diesem Thema haben ich einiges an Code im Forum gefunden, allerdings habe ich nun ein Problem. Das Script läuft bis zu dem Punkt, an dem per Messagebox das Ergebnis des Select Stamenets ausgegeben werden soll. Hier kommt die Fehlermeldung:

    MsgBox(0, "AutoIT-SQL Result", "WERT = " & $rs.Fields( "BEZ_VORGANGS_NR" ).Value ^ ERROR

    Eigentlich sieht es für mich so aus, als würde die Anmeldung an der Datenbank klappen, und auch das Statement scheint zu laufen. Ich habe mit Absicht einen Feldnamen im Statement falsch geschrieben, daraufhin kam die Meldung, dass "action with this object has failed". Richtig geschrieben kommt dann wieder erst nach dem Statement der Fehler der Message Box. Ich habe auch zwei verschiedene Datenbankanmeldungen ausprobiert (Variante 1 ist auskommentiert), das Verhalten des Scripts ist das gleiche...

    [autoit]


    $RNR = 12339200
    $conn = ObjCreate( "ADODB.Connection" )
    ;$DSN = "Driver={Microsoft ODBC for Oracle};" & _
    ; "CONNECTSTRING=(DESCRIPTION=" & _
    ; "(ADDRESS=(PROTOCOL=TCP)" & _
    ; "(HOST=xxx.yyy.de)(PORT=1521))" & _;
    ; "(CONNECT_DATA=(SERVICE_NAME=xxx))); Uid=xxx;;Pwd=xxx"
    $DSN = "Provider=OraOLEDB.Oracle;Data Source=xxx;User Id=xxx; Password=xxx";
    $conn.Open($DSN)
    MsgBox(0,"ConnectString",$DSN)
    $rs = ObjCreate( "ADODB.RecordSet" )
    $rs.Open( "Select BEZ_VORGANGS_NR from PKRK where RECHNUNG_NR = " & $RNR , $conn )
    MsgBox(0, "AutoIT-SQL Result", "WERT = " & $rs.Fields( "BEZ_VORGANGS_NR" ).Value )
    $conn.close

    [/autoit]

    Keine Ahnung was ich nun noch machen kann, bin für jeden Tipp dankbar...

    Gruß
    Klaus

    2 Mal editiert, zuletzt von lefty59 (7. März 2013 um 17:07)

  • Ich habe es mit der ersten DB Anmeldung noch einmal probiert - und nun funktioniert es. Keine Ahnung was ich bei den ersten Versuchen falsch gemacht habe (Leerzeichen??) - es muss in jedem Fall an der Anmeldung gelegen haben.

    Gruß
    Klaus