Hallo Ihr,
ich versuche gerade einige Daten aus einer Firebird Datenbank auszulesen. Das Klappt auch ganz gut, jedoch ist die Dokumentation nicht sonderlich groß.
Letztlich ist mir nicht ganz klar, in welchem Format der Rückgabewert eines _FireBird_ExecuteSelect ist. Scheint mir eine XML Syntax zu sein.
Hier mal der Code:
[autoit]
#include <Array.au3>
#include <String.au3>
#include <FireBird.au3>
Global $h_fbDll = DllOpen(@ScriptDir & "\fbdll4vb20.dll")Global $servername=@ComputerName
Global $sDBName="D:/xammp/htdocs/amicron/database/DATA.FDB"
Global $sUsername="SYSDBA"
Global $sPassword="masterkey"
_FireBird_ConnectDatabase($h_fbDll, $servername, $sDBName, $sUsername, $sPassword)
dim $result
$select = _FireBird_ExecuteSelect($h_fbDll,"select VORNAME from ADRESSEN WHERE TRIM(NR) = '200020'", $result)
MsgBox(0, "FBD Result", $result);ConsoleWrite($result)
dim $vorname = _StringBetween($result, "<VORNAME><![CDATA[", "]]></VORNAME>")
MsgBox(0, "FBD Result",$vorname)
[/autoit][autoit][/autoit][autoit][/autoit][autoit]ConnectionDllClose($h_fbDll)
[/autoit]Abfrage ($result per Konsole) ergibt:
<results><metadata><fields><name value="VORNAME" alias="VORNAME" type="5" size="30" scale="0" /></fields></metadata><data><row num="1" ><VORNAME><![CDATA[Tobias]]></VORNAME></row></data></results>>Exit code: 0 Time: 0.508
Daher dachte ich mir, ich könnte das mit _StringBetween lösen, jedoch kommt immer ein leeres Ergeniss, weiß einer warum?