LibreOffice BASIC:连接到PostgreSQL

时间:2019-02-27 13:49:49

标签: postgresql libreoffice-basic libreoffice-base

我已经使用LibreOffice Base(6.1)创建了PostgreSQL连接文件,并且可以在其中运行SQL查询,但是我想知道是否可以在LibreOffice BASIC函数中使用此Base连接。

我知道您可以为MySQL使用JDBC连接

mysql://hostname:port/database_name

但是我希望有一种使用基本文件的方法,因为它工作得很好

我一直试图在此网上找到文档,但我一直在努力寻找可以弥补BASIC与Base之间差距的任何东西。

1 个答案:

答案 0 :(得分:1)

我找到了答案,解决方案是使用createUnoService,它允许您指定在Base中设置的odb的名称。

oService = createUnoService("com.sun.star.sdb.DatabaseContext")
oBase = oService.getByName("basePostgreSQL")
oConn = oBase.getConnection("","")

oQuery = oConn.createStatement()
oSql = "select col from table"

oResult = oQuery.executeQuery(oSql)
while oResult.next()
    msgBox oResult.getString(1)
wend

oConn.close()