Pannello di Controllo Moderatore ]

collegare Openoffice Base a database PostgreSql

Re: collegare Openoffice Base a database PostgreSql

Messaggioda turi » domenica 9 gennaio 2011, 1:45

ed ora??
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 9 gennaio 2011, 9:20

Ora, attraverso Python, raccogliamo riga per riga i dati del file csv e li inseriamo nella tabella del nuovo database.

Codice: Seleziona tutto   Espandi visualeStringi visuale
import psycopg2
#questi sono i dati che autenticano e permettono la connessione al database
nomedb="tuodatabase"
host="localhost"
user="postgres"
password="tuapassword"

connessione="dbname='"+nomedb+"' host='"+host+"' user='"+user+"' password='"+password+"'"

connDB = psycopg2.connect(connessione) #apro la connessione
cur = connDB.cursor() #ottengo un cursore per poter lanciare le istruzioni

f = file("tuofile.csv", "r") #fa in modo che python trovi il file: metti
                      # il percorso completo
tutte = f.readlines()
for g in tutte:
    parti = g.split("$")
   
    colonna1 = parti[0]
    colonna2 = parti[1]
    # e via dicendo per tutte le colonne che interessano a te
     

    inserisci  = "INSERT INTO tuatabella (nomecolonna1, nomecolonna2) VALUES (%s, %s)"
    cur.execute(inserisci, (colonna1, colonna2))



connDB.commit()   # salvo i dati nel database
cur.close()      # chiudo il cursore
connDB.close()  # chiudo la connessione


Aprendo la idle, devi fare "Nuovo". Sulla finestra che si apre, incollare sto codice, modificarlo con i tuoi dati e a seconda delle tue esigenze (password, nomedatabase, nomi e quantità delle colonne etc).
E' molto propabile che ti dia qualche difficoltà all'inizio: ci sarà qualche dato che vedrà incongruente. Sistemeremo man mano che ti escono gli errori.
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 9 gennaio 2011, 14:07

Tutto fatto, corretti i vari errori che mi dava e naturalmente modificati anche in pgadmin..
ma mi da, in rosso, quando eseguo lo script:
Codice: Seleziona tutto   Espandi visualeStringi visuale
Traceback (most recent call last):
  File "C:\Python27\PretesseramentoPython", line 42, in <module>
    cur.execute(inserisci, (Cognome, Nome, Sesso, Indirizzo, N, Localita, Provincia, CAP, Data_nascita, Data_richiesta, Email, Cellulare, Nazionalita, Tessera_n, Anno_validita, Data_rilascio, Rinnovo, Note, ViaPiazza))
TypeError: not all arguments converted during string formatting
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 » domenica 9 gennaio 2011, 16:01

marcofoc ha scritto:
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.



La possibilità di fare copia/incolla dei dati me la da solo che non mi fa inserire da base nuovi record.
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 9 gennaio 2011, 18:30

aggiungi una virgola dopo ViaPiazza, subito dopo.
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 » lunedì 10 gennaio 2011, 1:58

Ho provveduto a disinstallare python, da stasera ogni volta che faccio run mi spunta schermata blu, tante scritte e si riavvia windows.
p.S. cmq anche mettendo la virgola nulla da fare, sicuro che senza questo script non si possa fare nulla?? facendo copia della tabella dalla tabella precedente alla tabella creata identica del database base collegata con postgresql???
a me le fa copiare solo che poi non ho la possibilità di inserire nuovi record.
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 » lunedì 10 gennaio 2011, 8:40

ma se copi e incolli, poi la tabella la ritrovi in PGAdmin?
Con questo script, adattando un attimo la cosa su eventuali errori (che di solito vengono emessi quando trova caselle vuote (NULL)), io trasferisco a manetta senza problemi.

Ps: piccolo consiglio: evita come la peste di dare nomi a tabelle e colonne usando maiuscole e minuscole insieme..
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 » lunedì 10 gennaio 2011, 14:04

modificata tabella in base, messo tutto minuscolo senza spazi o caratteri strani, creata struttura colonne in pgadmin identica, creato file cvs ma nulla... ancora mi da:

Traceback (most recent call last):
File "C:\Python27\PretesseramentoPython", line 41, in <module>
cur.execute(inserisci, (cognome, nome, sesso, indirizzo, n, localita, provincia, cap, datadinascita, datadirichiesta, email, cellulare, nazionalita, tesseran, annovalidita, datarilascio, rinnovo, note,))
TypeError: not all arguments converted during string formatting

P.S. ho levato via/piazza che aveva valori null..

Come dicevo prima non c'è la possibilità???
Come si vede se ci sono i dati in pgadmin dopo che faccio copia incolla direttamente da base?
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 » lunedì 10 gennaio 2011, 14:18

turi ha scritto:Come si vede se ci sono i dati in pgadmin dopo che faccio copia incolla direttamente da base?

basta che clicchi con il dx sulla tabella e fai: Visualizza dati..

turi ha scritto:Traceback (most recent call last):
File "C:\Python27\PretesseramentoPython", line 41, in <module>
cur.execute(inserisci, (cognome, nome, sesso, indirizzo, n, localita, provincia, cap, datadinascita, datadirichiesta, email, cellulare, nazionalita, tesseran, annovalidita, datarilascio, rinnovo, note,))
TypeError: not all arguments converted during string formatting


Niente di problematico:
i dati che vanno buttati dentro PostgreSQL durante l'INSERT, devono essere di tipo stringa (poi, una volta dentro, PostgreSQL cambia da solo il tipo (es.: se butto dentro un "True", poi diventa un booleano True).
Quindi, il problema nasce dal fatto che durante l'estrazione dal CSV, qualche valore non è stringa.
Per ovviare a ciò, potresti forzare il cast così:

Codice: Seleziona tutto   Espandi visualeStringi visuale
colonna1 = str(parti[0])


Il problema potrebbe ancora non essere del tutto risolto.
Ti consiglio di mettere un print dentro il ciclo for, così vedi dove si blocca.
Aggiungi una riga con scritto:
Codice: Seleziona tutto   Espandi visualeStringi visuale
print colonna1, colonna2, eccetera..
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 » lunedì 10 gennaio 2011, 20:37

Non ti offendere ma non voglio più usare python, dinuovo schermata blu e riavvia..
cmq neanche con la forzatura fa nulla... sempre quell'errore. :(
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 » lunedì 10 gennaio 2011, 21:32

marcofoc ha scritto:basta che clicchi con il dx sulla tabella e fai: Visualizza dati..


Si si vedono i dati.
Il fatto è che da base non mi da la possibilità di effettuare nuovi inserimenti.
neanche facendo il formulario.
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 » lunedì 10 gennaio 2011, 22:43

riesci ad inserire nuovi dati da PgAdmin?

turi ha scritto:Non ti offendere ma non voglio più usare python, dinuovo schermata blu e riavvia..

che tristezza.. :crazy:
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ì 11 gennaio 2011, 7:22

si me li fa inserire...
lo so, ma che ci posso fare?? :(
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ì 11 gennaio 2011, 8:47

beh, pazienza!!
Sei comunque riuscito nel tuo intento: hai trasferito i dati!
Trovo molto molto strano che Base non ti lasci inserire nuovi record..
ma molto!!
verifica bene la cosa per favore!
Quando apri la tabella, sotto non viene fuori l'asterisco giallo che, se premuto, ti permette di inserire nuovo record??
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ì 11 gennaio 2011, 13:52

no e la selezione dei dati e' tratteggiata... appunto in sola lettura, e se vado in inserisci>record di dati... non è selezionabile.
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ì 11 gennaio 2011, 13:54

incredibile.. io non ho mai fatto copia e incolla di una tabella.. e quindi non mi so come comportare..
fa una cosa:
vai in PgAdmin, e verifica in proprietà tabella: chi è il proprietario?
Deve essere postgres, il proprietario..
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ì 11 gennaio 2011, 13:55

lo è :(
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ì 11 gennaio 2011, 13:59

fa una cosa per favore:
crea una tabella con pgadmin, metti delle colonne a caso..
poi vedi se da Base riesci ad inserirci 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 » martedì 11 gennaio 2011, 14:05

fatto. neanche
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ì 11 gennaio 2011, 14:43

Bene, quindi il problema è generalizzato..
non dipende dal tuo copia e incolla..

Xergio, ci puoi aiutare?
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 » martedì 11 gennaio 2011, 14:52

prova a cancellare il file odb, e crearne un altro.. son 3 anni che uso Base così e non mi è mai capitata una cosa del genere..
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ì 11 gennaio 2011, 20:18

niente da fare :( invece sto aprendo un altro post per un'altra cosa, puoi vedere se riesci ad aiutarmi?
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ì 11 gennaio 2011, 21:14

Si ok,
ma sta cosa deve andare risolta...
non può esistere una cosa del genere!
Senti qua, visto che abbiamo fatto tutto per poterlo utilizzare in rete..
hai provato a connetterti al database con un altro pc?
Magari con un altro sistema operativo?
Magari con un'altra versione di Openoffice?
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ì 11 gennaio 2011, 21:53

non ci avevo pensato... appena torna mio fratello ci provo.
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ì 12 gennaio 2011, 13:41

adoro windows 7 ma dopo oggi inizierò ad odiarlo... anche tramite google ed il sito della microsoft non riesco a configurare la rete fra w7 e wxp grrrrr
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 » mercoledì 12 gennaio 2011, 14:36

turi ha scritto:adoro windows 7 ma dopo oggi inizierò ad odiarlo... anche tramite google ed il sito della microsoft non riesco a configurare la rete fra w7 e wxp grrrrr


:super:

:mrgreen:
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 16 gennaio 2011, 13:57

Naturalmente non mi sono dimenticato del tutorial, sto cercando un altro w7 per fare la prova :p
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 » lunedì 17 gennaio 2011, 18:07

marco grazie per l'attesa, ho pensato, dato l'utilizzo che potrei fare del database, di installare postgresql in remoto. mi daresti qualche dritta???
Ho già un server (mi sembra linux) in modo tale che possa accedere da qualunque pc senza dover avere necessariamente postgresql installato nel pc.
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 » lunedì 17 gennaio 2011, 22:31

E' certamente questa la destinazione d'uso "naturale" di un database..
verifica che il server sia linux, poi l'installazione è semplicissima..
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ì 18 gennaio 2011, 1:54

l'installazione è già fatta, nell'hosting è già installato.
ma se mettoin openoffice base come host=sito.web dbname=Nomedatabase non mi ci collega..
vorrei colelgare sia openoffice base che fare successivamente un form online che si collega sempre allo stesso database utilizzato da openoffice.
OpenOffice.org 3.3.0 su windows 7 e windows XP
turi
 
Messaggi: 154
Iscritto il: sabato 4 dicembre 2010, 15:34

PrecedenteProssimo

Torna a Base

Chi c’è in linea

Visitano il forum: Nessuno e 1 ospite