PostgreSQL
 sql >> Teknologi Basis Data >  >> RDS >> PostgreSQL

LibreOffice Calc menjalankan Fungsi PostgreSQL

Hal serupa dapat dilakukan di LibreOffice Calc, tetapi alih-alih menyiapkan koneksi database dengan berbagai menu, semuanya dilakukan dengan kode makro.

Berikut ini berfungsi untuk saya menggunakan ini Prosedur tersimpan MySQL :

Sub RunStoredProc
    Dim oParms(1) as new com.sun.star.beans.PropertyValue 
    oParms(0).Name = "user" 
    oParms(0).Value = "root" 
    oParms(1).Name = "password" 
    oParms(1).Value = "password" 
    oManager = CreateUnoService("com.sun.star.sdbc.DriverManager")
    sURL = "sdbc:mysql:jdbc:localhost:3306/world"
    oConnection = oManager.getConnectionWithInfo(sURL, oParms())
    sFormat = "Europe"
    oStmt = oConnection.prepareCall("CALL country_hos(?)")
    oStmt.setString(1, sFormat)
    oResult = oStmt.executeQuery()
    sResult = ""
    If Not IsNull(oResult) Then
      While oResult.Next()
        sResult = sResult & oResult.getString(1) & CHR(10)
      Wend
    End If
    MsgBox "Result: " & sFormat & " = " & CHR(10) & sResult
    oStmt.close()
End Sub

Kode ini diadaptasi dari https://forum.openoffice. org/en/forum/viewtopic.php?f=21&t=41149 .

Untuk menyelesaikan kode, modifikasi untuk memasukkan hasilnya ke dalam spreadsheet alih-alih menampilkannya di kotak pesan. Baca juga nilai yang dipilih dari kotak tarik-turun alih-alih melakukan hardcoding nilai sFormat .

Catatan:Beberapa informasi online menyarankan untuk menggunakan file .odb perantara. Itu akan melibatkan lebih banyak menu daripada melakukan semuanya di makro. Ini berfungsi untuk tabel dan kueri tetapi tampaknya tidak untuk prosedur tersimpan, kecuali mungkin dengan HSQLDB seperti yang disebutkan di sini .




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Hibernate:nilai kunci duplikat melanggar batasan unik

  2. Dapatkan daftar semua tabel yang digunakan dalam kueri SELECT Postgresql

  3. Django unik bersama kendala kegagalan?

  4. Permintaan PostgreSQL sangat lambat dengan batas 1

  5. Postgres menyetel komit otomatis secara global