TbeCbPgConnection
TbeCbPgConnection
Die Klasse stellt eine Verbindung zu einem PostgreSQL Datenbank Server her.
Die Verbindungs-Einstellungen müssen zuvor in den Fensterwerten unter beng Einstellungen → PostgreSQL Einstellung vorgenommen werden.
Ansonsten können die Einstellungen auch über die Eigenschaften gesetzt werden.
Eigenschaften
Eigenschaft | Beschreibung |
---|---|
Server:C | Name oder IP des PostgreSQL Serveres |
Port:N | Port des Servers |
CbUsername:C | Benutzername für die Anmeldung |
CbPassword:C | Passwort für die Anmeldung |
Database:C | Datenbank auf welche die Verbindung erfolgen soll |
Schema:C | Schema der Datenbank auf welche die Verbindung erfolgen soll |
Funktionen
Funktion | Parameter | Beschreibung |
---|---|---|
CbConnect() Verbindung herstellen | ||
CbDisconnect() Verbindung schließen | ||
CbStartTransaction() Transaktion starten | ||
CbCommit() Transaktion bestätigen | ||
CbRollback() Transaktion abbrechen und Änderungen verwerfen | ||
CbInTransaction(): boolean Prüfung ob die Transaktion aktiv ist | ||
CbGetDatabaseNames(): variant Liste aller verfügbaren Datenbanken | ||
CbGetTableNames(): variant Liste aller verfügbaren Tabllennamen |
Beispiel
| oCbPgConnection, oCbPgTable, oCbPgQuery, oCbPgSQL, oTempBeMemTable, r |
startseq
oCbPgConnection := CreateObject('TbeCbPgConnection'),
oCbPgTable := CreateObject('TbeCbPgTable'),
oCbPgQuery := CreateObject('TbeCbPgQuery'),
oCbPgSQL := CreateObject('TbeCbPgSQL'),
oTempBeMemTable := CreateObject('TBeMemTable'),
r := ClassName(oCbPgConnection), // ClassName(Object) zum Result hinzufügen
r := r + CRLF + ClassName(oCbPgTable), // ClassName(Object) zum Result hinzufügen
r := r + CRLF + ClassName(oCbPgQuery), // ClassName(Object) zum Result hinzufügen
r := r + CRLF + ClassName(oCbPgSQL), // ClassName(Object) zum Result hinzufügen
//oCbPgConnection.Database := '',
//oCbPgConnection.Server := '',
//oCbPgConnection.Port := 50100,
//oCbPgConnection.CbUsername := '',
//oCbPgConnection.CbPassword := '',
oCbPgConnection.CbConnect(),
oCbPgTable.Connection := oCbPgConnection,
oCbPgTable.TableName := 'dab000',
oCbPgTable.CbOpen(),
DbGotop(oCbPgTable),
WriteLn(oCbPgTable:MATCHCODE),
DbSkip(1, oCbPgTable),
WriteLn(oCbPgTable:MATCHCODE),
WriteLn(DbFCount(oCbPgTable)),
oTempBeMemTable.CbBorrowFromDataSet(oCbPgTable),
oTempBeMemTable.CbOpen(),
oTempBeMemTable.CbLoadFromDataSet(oCbPgTable, true),
WriteLn(oTempBeMemTable.CbGetRecAsArray()),
oCbPgTable.CbClose(),
oTempBeMemTable.CbClose(),
oCbPgQuery.Connection := oCbPgConnection,
oCbPgQuery.CbSQLText := 'SELECT * FROM dab000 WHERE ''SUCHE'' LIKE ''SA%''',
oCbPgQuery.CbOpen(),
DbGotop(oCbPgQuery),
WriteLn(oCbPgQuery:MATCHCODE),
DbSkip(1, oCbPgQuery),
WriteLn(oCbPgQuery:MATCHCODE),
WriteLn(DbFCount(oCbPgQuery)),
oTempBeMemTable.CbBorrowFromDataSet(oCbPgQuery),
oTempBeMemTable.CbOpen(),
oTempBeMemTable.CbLoadFromDataSet(oCbPgQuery, true),
WriteLn(oTempBeMemTable.CbGetRecAsArray()),
oCbPgQuery.CbClose(),
oTempBeMemTable.CbClose(),
startseq
oCbPgSQL.Connection := oCbPgConnection,
oCbPgSQL.CbSQLText := 'UPDATE dab000 SET NAME3 = NAME3',
oCbPgSQL.CbExecute(),
WriteLn(oCbPgSQL.CbRowsAffected()),
onerror
WriteLn(GetErrorText(GetErrorObj())),
stopseq,
always
oCbPgConnection.CbDisconnect(),
DestroyObject(oCbPgConnection),
DestroyObject(oCbPgTable),
DestroyObject(oCbPgQuery),
DestroyObject(oCbPgSQL),
DestroyObject(oTempBeMemTable),
stopseq,
r