Hi,
Ich befasse mich im Moment ein wenig mit ODBC (da bin ich noch Neuling). Im Moment mache ich noch alles über FlameRobin wollte mir aber ein paar AutoIt Scripte schreiben :).
Hier mein Script
Spoiler anzeigen
Dim $cn, $rs, $i
[/autoit] [autoit][/autoit] [autoit]$cn = ObjCreate("ADODB.Connection")
$cn.Open("Driver=Firebird/InterBase(r) driver;" & _
"Uid=SYSDBA;" & _
"Pwd=masterkey;" & _
"DbName=localhost/3050:C:\Datenbanken\Test.FDB;" & _
"Dialect=3;")
$rs = $cn.Execute("SELECT RDB$GET_CONTEXT('SYSTEM', 'ENGINE_VERSION') AS Firebird_Version, RDB$GET_CONTEXT('SYSTEM', 'NETWORK_PROTOCOL') AS Netzwerkprotokoll, RDB$GET_CONTEXT('SYSTEM', 'CLIENT_ADDRESS') AS Adresse FROM RDB$DATABASE;")
While Not $rs.EOF
For $i = 0 To $rs.Fields.Count - 1
ConsoleWrite($rs.Fields($i).Name & " " & $rs.Fields($i).Value & @CRLF)
Next
$rs.MoveNext
WEnd
$rs.Close
$cn.Close
Nun zu meiner Frage:
Wie bekomme ich es hin, den Errorcode auszulesen wenn ich z.B. eine nicht existente Tabelle abrufe oder ein Indexeintrag bereits besteht (Duplicate Value) ?
Beispiel FlameRobin:
Spoiler anzeigen
Preparing query: Select * from tabellegibbetnicht
Error: *** IBPP::SQLException ***
Context: Statement::Prepare( Select * from tabellegibbetnicht )
Message: isc_dsql_prepare failed
SQL Message : -204
can't format message 13:796 -- message file C:\Windows\firebird.msg not found
Engine Code : 335544569
Engine Message :
Dynamic SQL Error
SQL error code = -204
Table unknown
TABELLEGIBBETNICHT
At line 1, column 15
Total execution time: 0.004s
Alles anzeigen
Danke schon einmal im Voraus