LibreOffice Base può funzionare come interfaccia per un database PostgreSQL esistente, consentendo di esplorare tabelle, creare query e generare moduli o report senza dover spostare i dati in un database Base incorporato. Per la maggior parte delle installazioni attuali, la soluzione più pulita è la connessione diretta di LibreOffice a PostgreSQL. JDBC rimane comunque utile come soluzione di ripiego quando l'ambiente richiede un driver Java o quando il connettore diretto non è disponibile.
Scenario illustrativo: immaginiamo un piccolo team operativo chiamato Northwind Field Services. Il suo server PostgreSQL contiene un database denominato sales_ops. Il database è in esecuzione su db.example.internal, è in ascolto sulla porta 5432e il team ha un ruolo di sola lettura denominato analyst_ro. L'esempio è fittizio e viene utilizzato solo per mostrare come le decisioni di configurazione si integrano tra loro.
I passaggi seguenti si basano sulla Guida di LibreOffice per le connessioni PostgreSQL e JDBC e sulla documentazione ufficiale del server PostgreSQL. A ottobre 2026, LibreOffice indicava la versione 26.8.0 come la più recente e la 26.2.6 come la versione precedente più matura; la posizione esatta delle etichette o dei pulsanti può variare leggermente a seconda del sistema operativo e della versione. Consultare le note di rilascio ufficiali di LibreOffice e la Guida di LibreOffice per le connessioni PostgreSQL per la terminologia aggiornata.
Prima di iniziare: raccogli i quattro valori di connessione
In genere, all'amministratore di PostgreSQL sono necessarie quattro informazioni:
- Nome del database , ad esempio
sales_ops.
- Nome del server o indirizzo IP , ad esempio
db.example.internal.
- Porta , di solito,
5432a meno che l'amministratore non l'abbia modificata.
- Nome utente PostgreSQL e relativo metodo di autenticazione o password.
Non dare per scontato che un server che accetta connessioni PostgreSQL locali accetti anche connessioni LibreOffice da un altro computer. PostgreSQL listen_addressescontrolla quali interfacce di rete accettano connessioni TCP/IP, mentre pg_hba.confcontrolla quali indirizzi client, database, utenti e metodi di autenticazione sono consentiti. PostgreSQL documenta entrambi i comportamenti nelle sue impostazioni di connessione e nella documentazione sull'autenticazione del client .
Passaggio 1: Apri Base e scegli un database PostgreSQL esistente
Avvia LibreOffice Base e crea un nuovo documento di database Base. Nella procedura guidata per la creazione di database, scegli " Connetti a un database esistente" , quindi seleziona PostgreSQL come tipo di database. La procedura guidata per la creazione di database di LibreOffice supporta esplicitamente la connessione di un documento Base a un database esistente, anziché la creazione di un nuovo database incorporato.
Didascalia: La procedura guidata per il database è configurata per connettersi a un database PostgreSQL esistente anziché creare un nuovo database incorporato.
Nell'esempio di Northwind Field Services, questo significa che Base memorizzerà le informazioni di connessione e gli oggetti Base come query, moduli e report, mentre le tabelle aziendali effettive rimarranno in PostgreSQL.
Passaggio 2: Inserire il nome del database, il server e la porta.
Nella pagina di connessione a PostgreSQL, inserisci il nome del database, il server e la porta forniti dall'amministratore. Nell'esempio in esecuzione, questi valori sono sales_ops, db.example.internal, e 5432.
Didascalia: Pagina di connessione diretta a PostgreSQL con esempio il nome del database, il server e la porta predefinita di PostgreSQL.
LibreOffice consente anche di utilizzare una stringa di connessione specifica per PostgreSQL anziché compilare i campi di base. La guida ufficiale mostra moduli come dbname=MyDatabase host=myHost port=5432e postgresql://myHost:port/MyDatabase. Questo può essere utile quando un amministratore fornisce parametri aggiuntivi specifici del driver. LibreOffice precisa che i valori user=e password=in questa stringa di connessione vengono ignorati e l'autenticazione viene richiesta al momento della connessione.
Passaggio 3: Inserire l'utente PostgreSQL e testare la connessione.
Inserisci il ruolo PostgreSQL che deve essere utilizzato da Base. Un account di sola lettura o con privilegi minimi è solitamente un punto di partenza più sicuro rispetto al proprietario del database o al superutente quando lo scopo è la creazione di report o l'analisi. Nell'esempio, il ruolo è analyst_ro.
Didascalia: L'autenticazione è configurata con il ruolo di sola lettura di esempio e il test di connessione riporta esito positivo.
Prima di salvare il documento Base, esegui un Test di connessione . Un test riuscito conferma che Base può raggiungere il server e autenticarsi con il ruolo specificato. Tuttavia, non garantisce che il ruolo disponga delle autorizzazioni di lettura per tutte le tabelle che intendi utilizzare; pertanto, è comunque necessario verificare la visibilità delle tabelle dopo l'apertura della connessione.
Se il test fallisce, conserva il messaggio esatto. Errori come no pg_hba.conf entry, password authentication failed, user does not exist, o hanno cause diverse. La pagina di risoluzione dei problemi di autenticazionedatabase does not exist di PostgreSQL spiega questi messaggi e consiglia di controllare il log del server quando l'errore lato client non è sufficiente.
Passaggio 4: Salvare il documento del database di base
Dopo aver superato il test, scegli se registrare il database con LibreOffice e se aprirlo immediatamente per la modifica. La registrazione è utile quando altri componenti di LibreOffice devono fare riferimento all'origine dati tramite il suo nome. Quindi fai clic su Fine e salva il documento Base come .odbfile.
Didascalia: La pagina finale della procedura guidata consente di registrare l'origine dati PostgreSQL e di aprire il documento Base salvato per la modifica.
In questa configurazione, il .odbfile non è una copia del database PostgreSQL. Consideralo come il documento del database lato LibreOffice che contiene la definizione della connessione e gli oggetti Base. Se sposti il .odbfile su un altro computer, quest'ultimo necessita comunque di accesso alla rete, credenziali valide ed eventuali driver o certificati richiesti.
Passaggio 5: Verificare che le tabelle previste siano visibili
Apri il documento Base salvato e seleziona Tabelle . Dovresti visualizzare gli oggetti a cui il ruolo PostgreSQL è autorizzato ad accedere. Nell'esempio fittizio, le tabelle previste potrebbero includere customers, orders, products, e order_items.
Didascalia: La vista delle tabelle di base è il primo controllo pratico per verificare che il ruolo PostgreSQL connesso possa visualizzare gli oggetti dello schema previsti.
Se la connessione ha successo ma le tabelle non sono presenti, di solito non si tratta più di un problema di rete. Verifica i privilegi del ruolo PostgreSQL, la visibilità dello schema e il percorso di ricerca dello schema. Prima di modificare autonomamente le autorizzazioni, chiedi all'amministratore del database quali schemi e oggetti l'account dovrebbe visualizzare.
Passaggio 6: Eseguire una breve query di sola lettura prima di creare moduli o report.
Prima di creare una soluzione Base più complessa, esegui una semplice query di sola lettura su una tabella di piccole dimensioni. Ad esempio:
SELECT customer_id, full_name, city
FROM customers
ORDER BY full_name;
Didascalia: Una piccola query SELECT è un utile controllo funzionale dopo che le tabelle PostgreSQL sono diventate visibili in Base.
Questo verifica più del test di connessione iniziale: controlla che Base possa eseguire SQL tramite la connessione, che il ruolo possa leggere l'oggetto di destinazione e che le righe restituite siano utilizzabili nell'interfaccia di query di Base. Iniziate con SELECTle istruzioni se state convalidando un database di produzione. Non eseguite test inserendo, aggiornando o eliminando record reali a meno che non sia esplicitamente previsto dai requisiti di accesso.
Passaggio 7: Configurare TLS quando i criteri del database richiedono la crittografia
Per un database remoto o di produzione, è necessario attenersi ai requisiti TLS dell'organizzazione anziché presumere che una connessione non crittografata sia accettabile. PostgreSQL supporta connessioni client/server crittografate quando SSL è abilitato sul server e gli amministratori possono richiedere regole host specifiche per SSL . I dettagli di configurazione ufficiali sono disponibili nella documentazione SSL/TLSpg_hba.conf di PostgreSQL .
La connessione diretta a PostgreSQL di LibreOffice accetta parametri di connessione specifici del driver, ma non tutti i parametri di connessione a PostgreSQL vengono necessariamente gestiti dal gestore dei driver di LibreOffice. Se è necessaria la verifica del certificato, i certificati client o una modalità SSL specifica per determinate policy, è consigliabile confermare la stringa di connessione esatta con l'amministratore del database e consultare la documentazione di LibreOffice per la versione installata. In questo caso, copiare una stringa di connessione Internet generica può creare un falso senso di sicurezza.
Didascalia: Un errore di autenticazione che menziona pg_hba.conf e lo stato SSL indica un problema con la policy di connessione lato server, non semplicemente un nome di documento Base digitato in modo errato.
Passaggio 8: Utilizzare JDBC solo quando è necessario il percorso del driver Java
Se l'opzione di connessione diretta a PostgreSQL non è disponibile nel tuo ambiente o se un amministratore richiede espressamente l'utilizzo di JDBC, Base può connettersi tramite un driver JDBC. Questa soluzione richiede l'installazione di Java e del driver, quindi è preferibile considerarla un'alternativa da valutare attentamente piuttosto che un prerequisito per ogni connessione a PostgreSQL.
Scarica il driver JDBC per PostgreSQL esclusivamente dal sito ufficiale di pgJDBC . La documentazione di pgJDBC specifica che il file JAR del driver deve essere presente nel classpath di Java. La guida JDBC di LibreOffice indica di aggiungere il percorso del driver in Strumenti > Opzioni > LibreOffice > Avanzate > Class Path e di riavviare LibreOffice successivamente.
Didascalia: Il fallback JDBC richiede un runtime Java e il JAR JDBC di PostgreSQL nel classpath di LibreOffice.
Per PostgreSQL, pgJDBC documenta gli URL nel formato <URL> jdbc:postgresql://host:port/database. Con il server fittizio, questo sarebbe <URL> jdbc:postgresql://db.example.internal:5432/sales_ops. La classe del driver JDBC di PostgreSQL è <URL> org.postgresql.Driver; le moderne applicazioni Java possono caricarla tramite il meccanismo del provider di servizi di Java quando il JAR è presente, sebbene la procedura guidata JDBC di LibreOffice possa comunque richiedere un valore per la classe del driver. Consultare la guida di configurazione di pgJDBC , la documentazione sugli URL di connessione di pgJDBC e la guida JDBC di LibreOffice .
Tabella di risoluzione rapida dei problemi
| Sintomo | Controllo successivo più utile |
| Connessione rifiutata o timeout | Conferma il nome del server, la porta, il percorso del firewall, PostgreSQL listen_addressese verifica se il server è effettivamente in ascolto su quell'interfaccia. |
no pg_hba.conf entry | Chiedi all'amministratore di verificare la corrispondenza della regola host/database/utente e se la connessione deve necessariamente utilizzare SSL. |
| Autenticazione tramite password non riuscita | Verifica il ruolo e la password di PostgreSQL; non dare per scontato che il nome dell'account del sistema operativo corrisponda al ruolo del database. |
| La connessione funziona, ma mancano le tabelle. | Verificare i privilegi di ruolo, la visibilità dello schema e il percorso di ricerca/schema previsto. |
| Impossibile caricare la classe del driver JDBC | Verificare che il file JAR pgJDBC sia presente nel Class Path di LibreOffice, che Java sia abilitato e che LibreOffice sia stato riavviato. |
| Funziona su un computer ma non su un altro. | Confronta la raggiungibilità DNS/di rete, le regole IP del client pg_hba.conf, i certificati, la configurazione locale di Java/JDBC (se utilizzata) e le credenziali salvate. |
Come dovrebbe essere una configurazione di successo
Un criterio di successo utile non è semplicemente "il test di connessione è andato a buon fine". Nell'esempio di Northwind Field Services, la configurazione è effettivamente pronta quando il documento Base si riapre correttamente, l' analyst_roaccount può visualizzare solo gli oggetti PostgreSQL previsti, una semplice SELECTquery restituisce le righe attese e la connessione soddisfa i requisiti di crittografia e autenticazione dell'organizzazione.
Se arrivi al punto in cui le query di base funzionano, ma i moduli o i report di Base più complessi mostrano limitazioni relative al tipo di dati, alle prestazioni o al driver, smetti di considerare il problema come un problema di connettività. A quel punto, confronta il connettore PostgreSQL diretto con JDBC per il carico di lavoro specifico e testa esattamente la query o il tipo di dati rilevante. Il metodo di connessione dovrebbe essere funzionale alle policy del database e alle funzionalità di Base che effettivamente utilizzi, non diventare un fine a sé stesso.