Inhaltsverzeichnis
keine Gliederung

Über die HDBCOM können SQL-Abfragen sowohl gegen die HDB als auch gegen entfernte Datenbanken ausgeführt werden.

1.) Abfragen gegen entfernte Datenbanken

Wenn SQL-Abfragen gegen entfernte Datenbanken ausgeführt werden sollen, müssen sowohl die zu befragende Datenbank als auch der SQL-Server als Objekte der Klassen "SQLDatabase" bzw. "SQLServer" in der HDB eingetragen sein und es müssen Zugriffs-Credentials zumindest an einem der beiden HDB-Objekte hinterlegt werden.

Beispiel für SQL-Abfragen auf entfernte Datenbanken:

set oHDB = CreateObject("HDBCom.ComHDB")
set oSQLDatabase = oHDB.GetObjectbyPath("SQLServer(cname=SQL1)|SQLDatabase(cname=Test_DB)")
 
set oSQL = CreateObject("HDBCom.ClsSQLDB")
set oSQL.SQLDatabase = oSQLDatabase
 
sScalar = oSQL.SQLExecuteScalar("select [Id] from tblObject where CName='gschuel'")
sMulti = oSQL.SQLExecuteMulti("Select top 10 id,cname,enabled from tblObject")
sExecute = oSQL.SQLExecuteNonQuery("Update tblParameter set [value] = 0 where [name] = 'DispatcherReduce'")

Ergebnisse der Methode SQLExecuteMulti:
Zeilen kommen von "|" getrennt zurück, Spalten getrennt durch "~"

2.) Abfragen gegen die HDB

Wenn über die HDBCOM SQL-Abfragen gegen die HDB ausgeführt werden, ist es nicht notwendig, dass die Datenbank und der sQL-Server als Objekte in der HDB vorhanden sind.
Daher ist auch die vorherige Instanzierung der Datenbank nicht notwendig.

Beispiel für SQL-Abfragen gegen die HDB:

set oSQL = oHDB.GetSQLDB
sScalar = oSQL.SQLExecuteScalar("select [Id] from tblObject where CName='gschuel'")
sMulti = oSQL.SQLExecuteMulti("Select top 10 id,cname,enabled from tblObject")
sExecute = oSQL.SQLExecuteNonQuery("Update tblParameter set [value] = 0 where [name] = 'DispatcherReduce'")

Ergebnisse der Methode SQLExecuteMulti:
Zeilen kommen von "|" getrennt zurück, Spalten getrennt durch "~"

Was this page helpful?
Tags (Schlagworte bearbeiten)
Um einen Kommentar zu schreiben, müssen Sie sich anmelden.
Unterstützt von MindTouch Core