Pannello di Controllo Moderatore ]

collegare Openoffice Base a database PostgreSql

collegare Openoffice Base a database PostgreSql

Messaggioda marcofoc » domenica 26 dicembre 2010, 22:10

Con questo tutorial, impareremo:
1. Ad installare un server database PostgreSql nella nostra macchina
2. Predisporlo per un utilizzo dello stesso in rete
3. Salvare la base dati
4. Interfacciarvisi con Openoffice Base
5. Trasferire i dati da un database Openoffice Base al nuovo database attraverso uno script Python

La prima cosa da fare, è installare il server PostgreSql.
Su macchine Linux, è ovviamente presente nei repository. Basta cliccarci sopra e scaricare il pacchetto. Installate anche PgAdmin, che sarà l'interfaccia grafica che utilizzerete per amministrare il database
Per macchine Windows, basta andare sul sito, scaricare il pacchetto e installarlo.

D'ora in avanti, parlerò solo per utenze Linux. Se dovessero nascere problemi per utenze Windows, postatele. Le risolviamo man mano.

accedere al server sul database di prova (template1), al fine di impostare una password per l'utente già creato in automatico in fase di installazione: “postgres”. Senza questa procedura di impostazione di password, non si riuscirebbe ad accedere al server
Codice: Seleziona tutto   Espandi visualeStringi visuale
sudo -u postgres psql template1

si accede così al prompt di psql, attraverso il quale cambiamo l'user come sopra detto:
Codice: Seleziona tutto   Espandi visualeStringi visuale
ALTER USER postgres with PASSWORD 'password';

è importante che la password sia compresa fra apici (non “ ), e che alla fine del comando ci sia un punto e virgola. Solo se trova un ; l'interprete capisce che l'istruzione e finita e la può eseguire.
Fatto questo, usciamo dal prompt psql e torniamo al prompt ubuntu con la seguente istruzione
Codice: Seleziona tutto   Espandi visualeStringi visuale
\q;

visto che ora avremo una password da dare quando psql ce lo chiederà, possiamo iniziare con il creare un database:
sudo -u postgres createdb nomedatabase

Non possiamo ancora utilizzare il server: bisogna configurare i due file di configurazione Postgresql.
Apriamo con un editor di testi, i due file di configurazione principali:
Codice: Seleziona tutto   Espandi visualeStringi visuale
/etc/postgresql/8.4/main/postgresql.conf
/etc/postgresql/8.4/main/pg_hba.conf


il file postgresql.conf va modificato come vedete sotto, su listen_addresses (in modo che possa ricevere richieste da qualunque host, non solo il local)

e il file pg_hba, come segue:

Ora il server è impostato a livello di sicurezza ZERO: chiunque della rete lan vi si può collegare, senza dare password.. approfondiremo più avanti magari questo aspetto.

Ora il server è pronto per l'uso. Apriamo PgAdmin e iniziamo a creare la struttura per i dati.
Suggerisco di fare in modo che sia identica a quella del vecchio database, in modo da evitare problemi poi nel trasferimento dati (attenzione quindi ai vincoli, relazioni, nomi delle colonne, etc..)
Allegati
pg_hba.png
pg_hba.conf
postgresqlconf.png
postgresql.conf
Non esistono buoni maestri senza buoni allievi...
Avatar utente
marcofoc
 
Messaggi: 235
Iscritto il: martedì 12 ottobre 2010, 15:48
Località: Arzignano (VI)

Re: collegare Openoffice Base a database PostgreSql

Messaggioda turi » martedì 28 dicembre 2010, 21:20

scusa ma sono molto, ma molto, inesperto..

come si inseriscono queste stringhe??


Codice: Seleziona tutto   Espandi visualeStringi visuale
accedere al server sul database di prova (template1), al fine di impostare una password per l'utente già creato in automatico in fase di installazione: “postgres”. Senza questa procedura di impostazione di password, non si riuscirebbe ad accedere al server
CODICE: SELEZIONA TUTTO   ESPANDI VISUALE
sudo -u postgres psql template1

si accede così al prompt di psql, attraverso il quale cambiamo l'user come sopra detto:
CODICE: SELEZIONA TUTTO   ESPANDI VISUALE
ALTER USER postgres with PASSWORD 'password';




P.S. uso windows.
OpenOffice.org 3.3.0 su windows 7 e windows XP
turi
 
Messaggi: 154
Iscritto il: sabato 4 dicembre 2010, 15:34

Re: collegare Openoffice Base a database PostgreSql

Messaggioda marcofoc » martedì 28 dicembre 2010, 21:28

Vedo che lavori su windows..
quindi inizia con fare il download del pacchetto ed installarlo.
Lascia perdere i comandi che ho postato sopra: sono per utenti Linux.

http://www.enterprisedb.com/join-dev-community.do?fileid=1653
Non esistono buoni maestri senza buoni allievi...
Avatar utente
marcofoc
 
Messaggi: 235
Iscritto il: martedì 12 ottobre 2010, 15:48
Località: Arzignano (VI)

Re: collegare Openoffice Base a database PostgreSql

Messaggioda turi » sabato 1 gennaio 2011, 23:50

mi richiede una password durante il setup.. ma non capisco a quale possa essere... mi chiede la password per l'account postgres..
P.S. Auguri :)
OpenOffice.org 3.3.0 su windows 7 e windows XP
turi
 
Messaggi: 154
Iscritto il: sabato 4 dicembre 2010, 15:34

Re: collegare Openoffice Base a database PostgreSql

Messaggioda marcofoc » domenica 2 gennaio 2011, 11:16

è normale!
durante l'installazione, viene creato un nuovo utente: postgres. Questo è l'utente "amministratore" del database.
Dagli una password. A piacimento.

Tanti auguri anche a te.
Non esistono buoni maestri senza buoni allievi...
Avatar utente
marcofoc
 
Messaggi: 235
Iscritto il: martedì 12 ottobre 2010, 15:48
Località: Arzignano (VI)

Re: collegare Openoffice Base a database PostgreSql

Messaggioda turi » domenica 2 gennaio 2011, 15:19

questo l'avevo intuito perchè mi chiede 2 volte pa passwd XD.. il problema è che non mi fa proseguire qualunque passwd metto :). mi dice che la passwd non è corretta... e se provo ad andare avanti senza inserirla mi dice che obbligatorio scegliere una password :S

Avevo installato la 9.0 prima e l'ho disinstallata per installare la tua... questo può centrare qualcosa...??

P.S. la passwd me la chiede anche se provo a reinstallare la 9.0
OpenOffice.org 3.3.0 su windows 7 e windows XP
turi
 
Messaggi: 154
Iscritto il: sabato 4 dicembre 2010, 15:34

Re: collegare Openoffice Base a database PostgreSql

Messaggioda turi » mercoledì 5 gennaio 2011, 23:09

sono proprio sfortunato vero>??? :(
OpenOffice.org 3.3.0 su windows 7 e windows XP
turi
 
Messaggi: 154
Iscritto il: sabato 4 dicembre 2010, 15:34

Re: collegare Openoffice Base a database PostgreSql

Messaggioda marcofoc » giovedì 6 gennaio 2011, 10:30

No no, non è questione di fortuna.
E non è questione di versione di PostgreSQL.
Aspetta, scarico il file e provo ad installarlo.. ho qui una partizione Win qui apposta per ste cose..
Non esistono buoni maestri senza buoni allievi...
Avatar utente
marcofoc
 
Messaggi: 235
Iscritto il: martedì 12 ottobre 2010, 15:48
Località: Arzignano (VI)

Re: collegare Openoffice Base a database PostgreSql

Messaggioda marcofoc » giovedì 6 gennaio 2011, 11:06

Allora, sono su Win e ho lancialo l'installazione.
Facciamo passo passo:
ti chiede l'installation directory: lascia quella di default
ti chiede la data directory: lascia quella di default
ti chiede la password per il superuser (chiamato postgres): danne una a tuo piacimento
ti chiede che come impostare l'ora del cluster: lascia quella di default locale

parte l'unpacking..

alla fine ti chiede se vuoi avviare Stackbuilder: serve per installare applicazioni aggiuntive: lascia perdere. Lo potrai rilanciare in futuro.

Bene, fatto:
ora su programmi troverai un nuovo collegamento "PostgreSQL 8.4"
All'interno di questo menu troverai vari comandi: quello che ti serve è PGAdmin: lancialo.
In alto a sx troverai un server già installato: "PostgreSQL 8.4 (localhost:5432)"
Lancialo: ti chiederà la password: dagli quella che hai impostato in sede di installazione.
All'interno troverai un database già inserito per default: postgres. Lascialo perdere.
Tu crea il tuo: mettiti sopra database e fai: crea nuovo. Dagli il nome e sei pronto.

Una ultima cosa:
devi configurare il server perchè possa ricevere richieste anche da altri pc della rete.
Vai su Risorse del Computer: C:\Programmi\PostgreSQL\8.4\data
All'interno di questa cartella trovi i due file (pg_hba.conf e postgresql.conf). Cambiali come da istruzioni sopra.

Il prossimo passo sarà collegare Openoffice al server.

Stop. Ritorno a Linux. Mi sono già venute fuori le pustole sulle dita! :D
Non esistono buoni maestri senza buoni allievi...
Avatar utente
marcofoc
 
Messaggi: 235
Iscritto il: martedì 12 ottobre 2010, 15:48
Località: Arzignano (VI)

Re: collegare Openoffice Base a database PostgreSql

Messaggioda turi » giovedì 6 gennaio 2011, 12:45

qualunque password metto nel terzo step mi dice : "The password specified was incorrect. Please enter correct password for the postgres windows user account.".

Se la scio vuoto:"You must enter a password to continue".

P.S. so fare un'installazione XD XD XD
OpenOffice.org 3.3.0 su windows 7 e windows XP
turi
 
Messaggi: 154
Iscritto il: sabato 4 dicembre 2010, 15:34

Re: collegare Openoffice Base a database PostgreSql

Messaggioda turi » giovedì 6 gennaio 2011, 13:58

se qualcuno dovesse avere il mio stesso problema ho risolto cosi:
start > esegui > control userpasswords2

bisogna eliminare l'utente postgres... poi l'installazione va avanti..
il problema era causato dalla vecchia installazione di postgres che aveva lasciato l'utente ;)
OpenOffice.org 3.3.0 su windows 7 e windows XP
turi
 
Messaggi: 154
Iscritto il: sabato 4 dicembre 2010, 15:34

Re: collegare Openoffice Base a database PostgreSql

Messaggioda turi » giovedì 6 gennaio 2011, 14:12

P.S. sono a pari passo :)
Attendo news per la creazione della struttura.. :knock:
OpenOffice.org 3.3.0 su windows 7 e windows XP
turi
 
Messaggi: 154
Iscritto il: sabato 4 dicembre 2010, 15:34

Re: collegare Openoffice Base a database PostgreSql

Messaggioda marcofoc » giovedì 6 gennaio 2011, 16:12

Bene Turi!!
Allora, ora devi creare la struttura utilizzando PgAdmin, copiando quella già fatta con Openoffice.
Crea tutte le tabelle, utilizza gli stessi nomi colonna e via dicendo.

Intanto, per connettere Openoffice base al server, scarica l'estensione:
http://dba.openoffice.org/drivers/postgresql/postgresql-sdbc-0.7.6b.zip

Salvalo dove vuoi, poi apri un foglio writer, vai su Strumenti, Gestione estensioni, e carica il file zip (non occorre scompattarlo).
Poi chiudi tutti i file aperti che hai di Openoffice, e apri un nuovo database Base.
Vedi le immagini sotto.
Allegati
Schermata.png
Schermata-Creazione guidata database-1.png
Schermata-Creazione guidata database-2.png
Non esistono buoni maestri senza buoni allievi...
Avatar utente
marcofoc
 
Messaggi: 235
Iscritto il: martedì 12 ottobre 2010, 15:48
Località: Arzignano (VI)

Re: collegare Openoffice Base a database PostgreSql

Messaggioda turi » giovedì 6 gennaio 2011, 18:37

ok... adesso... come creo la struttura della tabella in postgresql?
OpenOffice.org 3.3.0 su windows 7 e windows XP
turi
 
Messaggi: 154
Iscritto il: sabato 4 dicembre 2010, 15:34

Re: collegare Openoffice Base a database PostgreSql

Messaggioda marcofoc » giovedì 6 gennaio 2011, 23:35

ora da PgAdmin inizia a crearti tutte le tabelle, cerca di tenere gli stessi nomi tabella e nomi colonna.
Una volta creata la struttura, inizieremo a trasferire i dati.
Non credo che tu voglia che io ti insegni a creare una tabella... si fa tutto a video, con PgAdmin: tabelle, relazioni, vincoli, etc..
Chiedimi sullo specifico, e ti risponderò.
Non esistono buoni maestri senza buoni allievi...
Avatar utente
marcofoc
 
Messaggi: 235
Iscritto il: martedì 12 ottobre 2010, 15:48
Località: Arzignano (VI)

Re: collegare Openoffice Base a database PostgreSql

Messaggioda turi » venerdì 7 gennaio 2011, 1:49

Nello specifico: Da postgres dove vado per creare una nuova tabella con le relative colonne? XD
OpenOffice.org 3.3.0 su windows 7 e windows XP
turi
 
Messaggi: 154
Iscritto il: sabato 4 dicembre 2010, 15:34

Re: collegare Openoffice Base a database PostgreSql

Messaggioda turi » venerdì 7 gennaio 2011, 2:00

ok, sono andato nel database.. > schemi > public > tabella.
ho creato la tabella, vado per creare le colonne ma non c'è il tipo di dato di testo VARCHAR :crazy:
OpenOffice.org 3.3.0 su windows 7 e windows XP
turi
 
Messaggi: 154
Iscritto il: sabato 4 dicembre 2010, 15:34

Re: collegare Openoffice Base a database PostgreSql

Messaggioda marcofoc » venerdì 7 gennaio 2011, 7:29

a questo tipo corrisponde il "character varing".... anche qui puoi impostare il numero massimo di caratteri.

Senti, gli schemi:
in questo caso sei su quello creato in automatico: public.
Ne puoi creare ancora, se vuoi. Servono solo per dividere ed organizzare meglio le tabelle.. invece di averle tutte ammucchiate in un posto solo.
Puoi ad esempio crearti uno schema clienti, e uno fornitori.. e via dicendo..
Non esistono buoni maestri senza buoni allievi...
Avatar utente
marcofoc
 
Messaggi: 235
Iscritto il: martedì 12 ottobre 2010, 15:48
Località: Arzignano (VI)

Re: collegare Openoffice Base a database PostgreSql

Messaggioda turi » venerdì 7 gennaio 2011, 13:07

appena faccio fine, quando creo nuovo database, si blocca. sono stato ad aspettare anche 10 minuti sperando si sbloccasse, ho provato più di una volta.. ma niente, rimane bloccato quando clicco su "fine" e salvo sul desktop.
Provo a riavviare.
OpenOffice.org 3.3.0 su windows 7 e windows XP
turi
 
Messaggi: 154
Iscritto il: sabato 4 dicembre 2010, 15:34

Re: collegare Openoffice Base a database PostgreSql

Messaggioda turi » venerdì 7 gennaio 2011, 13:14

ok risolto, anche se nell'ultima immagine non è fleggata, bisogna fleggare la password XD
Adesso quindi diamo quasi alla fine :p manca spostare i dati e creare il formulario no?

P.S. in "tabelle" (In base) mi spuntano tantissime tabelle :S
OpenOffice.org 3.3.0 su windows 7 e windows XP
turi
 
Messaggi: 154
Iscritto il: sabato 4 dicembre 2010, 15:34

Re: collegare Openoffice Base a database PostgreSql

Messaggioda turi » venerdì 7 gennaio 2011, 13:18

Forse ho capitooooooooooooooooo
da base vado in public, mi posiziono sopra la mia tabella e faccio copia incolla della tabella con i 4000 record che avevo prima.
e poi mi creo il formulario... giusto???

P.S. se entro nella tabella (da base) non mi da la possibilità di inserire nuovi record.

P.P.S. Mi dà problemi a copiare i boolean [Si/No]
OpenOffice.org 3.3.0 su windows 7 e windows XP
turi
 
Messaggi: 154
Iscritto il: sabato 4 dicembre 2010, 15:34

Re: collegare Openoffice Base a database PostgreSql

Messaggioda marcofoc » venerdì 7 gennaio 2011, 16:17

turi ha scritto:ok risolto, anche se nell'ultima immagine non è fleggata, bisogna fleggare la password XD


Cavolo, scusami!!
Avevo dato per scontato che il server non necessitasse il passaggio della password! Invece si!!

Aspetta, Turi.
PostgreSQL non credo ti permetta di fare copia e incolla di tabelle!!
Devi creare la struttura, poi facciamo un piccolo script in python e passiamo dentro i dati.
Non esistono buoni maestri senza buoni allievi...
Avatar utente
marcofoc
 
Messaggi: 235
Iscritto il: martedì 12 ottobre 2010, 15:48
Località: Arzignano (VI)

Re: collegare Openoffice Base a database PostgreSql

Messaggioda turi » venerdì 7 gennaio 2011, 17:04

ah ok, allora attendo tue notizie, considera che già la struttura è fatta.. unico problema il boolean [Si/No] che non so com'è in postgresql.
P.S. non so cos'è Python. quindi fa come se fossi un bambino per spiegarmelo :lol:
OpenOffice.org 3.3.0 su windows 7 e windows XP
turi
 
Messaggi: 154
Iscritto il: sabato 4 dicembre 2010, 15:34

Re: collegare Openoffice Base a database PostgreSql

Messaggioda marcofoc » venerdì 7 gennaio 2011, 17:22

Python è un magnifico linguaggio di programmazione.
Stasera ti preparo lo script, intanto installati python:
http://www.python.org/ftp/python/2.7/python-2.7.msi
e il driver che permette a python di dialogare con postgres:
http://www.stickpeople.com/projects/python/win-psycopg/psycopg2-2.3.1.win32-py2.6-pg9.0.1-release.exe

ci sentiamo stasera.
Non esistono buoni maestri senza buoni allievi...
Avatar utente
marcofoc
 
Messaggi: 235
Iscritto il: martedì 12 ottobre 2010, 15:48
Località: Arzignano (VI)

Re: collegare Openoffice Base a database PostgreSql

Messaggioda turi » venerdì 7 gennaio 2011, 18:01

quando cerco di installare i driver mi dice che serve la versione 2.6 di python.
quella che mi hai dato tu è la 2.7 e nel sito non c'è la 2.6 :(
OpenOffice.org 3.3.0 su windows 7 e windows XP
turi
 
Messaggi: 154
Iscritto il: sabato 4 dicembre 2010, 15:34

Re: collegare Openoffice Base a database PostgreSql

Messaggioda marcofoc » venerdì 7 gennaio 2011, 21:02

Non esistono buoni maestri senza buoni allievi...
Avatar utente
marcofoc
 
Messaggi: 235
Iscritto il: martedì 12 ottobre 2010, 15:48
Località: Arzignano (VI)

Re: collegare Openoffice Base a database PostgreSql

Messaggioda marcofoc » venerdì 7 gennaio 2011, 21:05

Prima di fare lo script, devi estrarre i dati dalla tabella del database in un file calc, eliminare la prima riga di intestazione, e salvare il file in formato csv, utilizzando un carattere UNIVOCO per la separazione dei campi. Io di solito uso il "$", perchè so che nei miei dati non è mai presente.
Servirà poi allo script per splittare le colonne.
Non esistono buoni maestri senza buoni allievi...
Avatar utente
marcofoc
 
Messaggi: 235
Iscritto il: martedì 12 ottobre 2010, 15:48
Località: Arzignano (VI)

Re: collegare Openoffice Base a database PostgreSql

Messaggioda turi » sabato 8 gennaio 2011, 4:54

Altro problema:
1)Non so come si estraggono i dati dalla tabella del database in un file calc.
2) non so come si utilizza pylthon
3) Nelle colonne come si fa il boolean [Si/No](le caselle da fleggare) che non vadano in conflitto con postgresql?
Te l'ho detto, fai finta che sono un bimbo che non sa nulla :roll:
OpenOffice.org 3.3.0 su windows 7 e windows XP
turi
 
Messaggi: 154
Iscritto il: sabato 4 dicembre 2010, 15:34

Re: collegare Openoffice Base a database PostgreSql

Messaggioda marcofoc » sabato 8 gennaio 2011, 9:27

Allora, per le colonne booleane.. non ti preoccupare. Problemi Zero.
Per python, nemmeno.

Estrazione dei dati:
apri un foglio in Calc, e premi F4 (sorgenti di dati).
Dovrebbe apparire il tuo vecchio database, fra le sorgenti disponibili.
Cerca la tua tabella, seleziona tutti i dati e trascinali sul foglio.
Apposto!
Ri-premi F4 così chiudi le sorgenti software!
Allegati
Schermata.png
Schermata2.png
Non esistono buoni maestri senza buoni allievi...
Avatar utente
marcofoc
 
Messaggi: 235
Iscritto il: martedì 12 ottobre 2010, 15:48
Località: Arzignano (VI)

Re: collegare Openoffice Base a database PostgreSql

Messaggioda turi » sabato 8 gennaio 2011, 15:03

Fatto e salvato in file cvs.. come separatore di campo messo anche io $ (che non lo uso mai) e poi c'era separatore (non mi ricordo cosa) che era " (viegolette-ho lasciato questo).
OpenOffice.org 3.3.0 su windows 7 e windows XP
turi
 
Messaggi: 154
Iscritto il: sabato 4 dicembre 2010, 15:34

Prossimo

Torna a Base

Chi c’è in linea

Visitano il forum: Nessuno e 2 ospiti