Hallo zusammen,
für meine Arbeit muss ich mich mit einen Oracle Server 11g verbinden und dort entsprechende Abfragen durchführen.
Die Verbindung und eine abfrage bekomme ich auch hin aber wenn ich die Abfrage ausführe zeigt er mir immer nur den ersten Datensatz an, ich weiß aber das es wesentlich mehr Datensätze gibt.
Das Programm was wir normalerweiße einsetzten kann ich nicht nutzten, da ich über 300 Abfragen hätte und eine Script schreiben das das Programm steuert geht auch nicht da ich das Script nachts laufen lassen müsste bei der Menge.
Anbei das Script und ich hoffe das mir jemand weiterhelfen kann, was die Ausgabe betrifft.
Spoiler anzeigen
#include <sqlite.au3>
#include <sqlite.dll.au3>
#include <Array.au3>
#include <mysql.au3>
Local $avArray[3][3]
$conn = ObjCreate( "ADODB.Connection" )
$DSN = "Driver={Microsoft ODBC for Oracle};" & _
"CONNECTSTRING=(DESCRIPTION=" & _
"(ADDRESS=(PROTOCOL=TCP)" & _
"(HOST="&$Host&")(PORT="&$Port&"))" & _
"(CONNECT_DATA=(SID="&$SID&"))); Uid="&$User&";Pwd="&$PW&";"
$conn.Open($DSN)
$rs = ObjCreate( "ADODB.RecordSet" )
$rs.open("select trunc(1a) 1, sum (2a) 2, 3a Zeichen from "TABELLE" where datum> '02.09.2014' group by trunc(1a), 3a order by trunc(1a)", $conn )
$avArray[0][0] = $rs.Fields( "1" ).Value
$avArray[0][1] = $rs.Fields( "2" ).Value
$avArray[0][2] = $rs.Fields( "Zeichen" ).Value
_ArrayDisplay($avArray)
$conn.close
Ich musste die Werte entsprechend verändern da es eine interen Abfrage ist.
Es zeigt mir wie gesagt nur den ersten Datensatz an den er findet, er sollte aber alle Datensätze anzeigen wo das Datum größer als der 02.09.2014 ist.
Muss ich noch eine entsprechende Schleife einbauen ?
Die Abfrage würde ich dann gerne in eine Textdatei schreiben lassen bzw. zwecke einfacher Kontrolle in eine Array schreiben lassen.
Das mit den Array habe och auch schon mal getestet und dabei hat er mir wie gesagt nur einen Datensatz angezeigt.
Das mit der Textdatei klappt überhaupt nicht.
Google konnte mir leider keine genauen Tipps geben, ich hoffe einer hier kann mir weiterhelfen.