I usually wrote SQL like this:
sSQL = "SELECT " & """ID""" & ", " & """FirstName""" & ", " & """LastName""" & ", " & """DateOfBirth""" & ", " & """Salary""" & " FROM " & """Table1""" & " WHERE " & """ID""" & " = " & "'1'"
But for the very long SQL, it is very difficult to write like that.
Is it possible to write:
"SELECT ID, FirstName, LastName, DateOfBirth, Salary FROM Table1 WHERE ID = 1"
and how to getRowSet
in Sub Test2
?
Sub Test2
Dim sSQL, dbf As String
Dim db, oStatement As Object
Dim lesQueries, descrQuery As Object
On Local Error GoTo CloseConnection
dbf = "file:///home/id00003/Documents/LibreOffice/LibreOfficeAskLibreOffice/0033SimpleFormSQL/0033SimpleFormSQL.odb"
db = ConnectDatabase(dbf)
oStatement = db.CreateStatement
MsgBox "Connected"
lesQueries = db.QueryDefinitions
descrQuery = lesQueries.createInstance
descrQuery.Command = "SELECT ID, FirstName, LastName, DateOfBirth, Salary FROM Table1 WHERE ID = 1"
'How to getRowSet in Sub Test2 ?
MsgBox "Found"
DisconnectDatabase(db)
MsgBox "Disconnected"
Exit Sub
CloseConnection:
MsgBox "Error " & Err & ": " & Error$ & " (line : " & Erl & ")"
DisconnectDatabase(db)
End Sub
LibreOffice:
Version: 7.3.6.2 / LibreOffice Community
Build ID: 30(Build:2)
CPU threads: 4; OS: Linux 5.15; UI render: default; VCL: gtk3
Locale: en-US (en_US.UTF-8); UI: en-US
Ubuntu package version: 1:7.3.6-0ubuntu0.22.04.1
Calc: threaded
Base: Firebird
OS:
Ubuntu 22.04 LTS
0033SimpleFormSQL.odb (3.0 KB)
0033SimpleFormSQL.ods (13.4 KB)