collegare Openoffice Base a database PostgreSql
Re: collegare Openoffice Base a database PostgreSql
ed ora??
OpenOffice.org 3.3.0 su windows 7 e windows XP
- marcofoc
- Messaggi: 235
- Iscritto il: martedì 12 ottobre 2010, 16:48
- Località: Arzignano (VI)
- Contatta:
Re: collegare Openoffice Base a database PostgreSql
Ora, attraverso Python, raccogliamo riga per riga i dati del file csv e li inseriamo nella tabella del nuovo database.
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.
Codice: Seleziona tutto
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
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...
Re: collegare Openoffice Base a database PostgreSql
Tutto fatto, corretti i vari errori che mi dava e naturalmente modificati anche in pgadmin..
ma mi da, in rosso, quando eseguo lo script:
ma mi da, in rosso, quando eseguo lo script:
Codice: Seleziona tutto
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
Re: collegare Openoffice Base a database PostgreSql
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
- marcofoc
- Messaggi: 235
- Iscritto il: martedì 12 ottobre 2010, 16:48
- Località: Arzignano (VI)
- Contatta:
Re: collegare Openoffice Base a database PostgreSql
aggiungi una virgola dopo ViaPiazza, subito dopo.
Non esistono buoni maestri senza buoni allievi...
Re: collegare Openoffice Base a database PostgreSql
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.
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
- marcofoc
- Messaggi: 235
- Iscritto il: martedì 12 ottobre 2010, 16:48
- Località: Arzignano (VI)
- Contatta:
Re: collegare Openoffice Base a database PostgreSql
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..
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...
Re: collegare Openoffice Base a database PostgreSql
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?
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
- marcofoc
- Messaggi: 235
- Iscritto il: martedì 12 ottobre 2010, 16:48
- Località: Arzignano (VI)
- Contatta:
Re: collegare Openoffice Base a database PostgreSql
basta che clicchi con il dx sulla tabella e fai: Visualizza dati..turi ha scritto:Come si vede se ci sono i dati in pgadmin dopo che faccio copia incolla direttamente da base?
Niente di problematico: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
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
colonna1 = str(parti[0])
Ti consiglio di mettere un print dentro il ciclo for, così vedi dove si blocca.
Aggiungi una riga con scritto:
Codice: Seleziona tutto
print colonna1, colonna2, eccetera..
Non esistono buoni maestri senza buoni allievi...
Re: collegare Openoffice Base a database PostgreSql
Non ti offendere ma non voglio più usare python, dinuovo schermata blu e riavvia..
cmq neanche con la forzatura fa nulla... sempre quell'errore.
cmq neanche con la forzatura fa nulla... sempre quell'errore.
OpenOffice.org 3.3.0 su windows 7 e windows XP
Re: collegare Openoffice Base a database PostgreSql
Si si vedono i dati.marcofoc ha scritto: basta che clicchi con il dx sulla tabella e fai: Visualizza 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
- marcofoc
- Messaggi: 235
- Iscritto il: martedì 12 ottobre 2010, 16:48
- Località: Arzignano (VI)
- Contatta:
Re: collegare Openoffice Base a database PostgreSql
riesci ad inserire nuovi dati da PgAdmin?
che tristezza..turi ha scritto:Non ti offendere ma non voglio più usare python, dinuovo schermata blu e riavvia..
Non esistono buoni maestri senza buoni allievi...
Re: collegare Openoffice Base a database PostgreSql
si me li fa inserire...
lo so, ma che ci posso fare??
lo so, ma che ci posso fare??
OpenOffice.org 3.3.0 su windows 7 e windows XP
- marcofoc
- Messaggi: 235
- Iscritto il: martedì 12 ottobre 2010, 16:48
- Località: Arzignano (VI)
- Contatta:
Re: collegare Openoffice Base a database PostgreSql
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??
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...
Re: collegare Openoffice Base a database PostgreSql
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
- marcofoc
- Messaggi: 235
- Iscritto il: martedì 12 ottobre 2010, 16:48
- Località: Arzignano (VI)
- Contatta:
Re: collegare Openoffice Base a database PostgreSql
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..
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...
Re: collegare Openoffice Base a database PostgreSql
lo è
OpenOffice.org 3.3.0 su windows 7 e windows XP
- marcofoc
- Messaggi: 235
- Iscritto il: martedì 12 ottobre 2010, 16:48
- Località: Arzignano (VI)
- Contatta:
Re: collegare Openoffice Base a database PostgreSql
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..
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...
Re: collegare Openoffice Base a database PostgreSql
fatto. neanche
OpenOffice.org 3.3.0 su windows 7 e windows XP
- marcofoc
- Messaggi: 235
- Iscritto il: martedì 12 ottobre 2010, 16:48
- Località: Arzignano (VI)
- Contatta:
Re: collegare Openoffice Base a database PostgreSql
Bene, quindi il problema è generalizzato..
non dipende dal tuo copia e incolla..
Xergio, ci puoi aiutare?
non dipende dal tuo copia e incolla..
Xergio, ci puoi aiutare?
Non esistono buoni maestri senza buoni allievi...
- marcofoc
- Messaggi: 235
- Iscritto il: martedì 12 ottobre 2010, 16:48
- Località: Arzignano (VI)
- Contatta:
Re: collegare Openoffice Base a database PostgreSql
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...
Re: collegare Openoffice Base a database PostgreSql
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
- marcofoc
- Messaggi: 235
- Iscritto il: martedì 12 ottobre 2010, 16:48
- Località: Arzignano (VI)
- Contatta:
Re: collegare Openoffice Base a database PostgreSql
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?
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...
Re: collegare Openoffice Base a database PostgreSql
non ci avevo pensato... appena torna mio fratello ci provo.
OpenOffice.org 3.3.0 su windows 7 e windows XP
Re: collegare Openoffice Base a database PostgreSql
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
- marcofoc
- Messaggi: 235
- Iscritto il: martedì 12 ottobre 2010, 16:48
- Località: Arzignano (VI)
- Contatta:
Re: collegare Openoffice Base a database PostgreSql
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
Non esistono buoni maestri senza buoni allievi...
Re: collegare Openoffice Base a database PostgreSql
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
Re: collegare Openoffice Base a database PostgreSql
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.
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
- marcofoc
- Messaggi: 235
- Iscritto il: martedì 12 ottobre 2010, 16:48
- Località: Arzignano (VI)
- Contatta:
Re: collegare Openoffice Base a database PostgreSql
E' certamente questa la destinazione d'uso "naturale" di un database..
verifica che il server sia linux, poi l'installazione è semplicissima..
verifica che il server sia linux, poi l'installazione è semplicissima..
Non esistono buoni maestri senza buoni allievi...
Re: collegare Openoffice Base a database PostgreSql
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.
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