Newsgroup: it.comp.software.database
Titolo: importa con phppgadmin

Ciao a tutti,
sto tentando invano di importare una tabella esterna CSV su una
tabella di pgsql, ma mi viene sempre il seguente errore:
ERROR:  column "nome§colore§origine" of relation "frutta" does not
exist
Nel costrutto:
INSERT INTO "frutta" ("nome§colore§origine") VALUES
('arance§rosse§sicilia')
ovvero, come faccio a spiegare alla funzione IMPORTA di phppgamin che
"nome§colore§origine" sono i 3 nomi delle rispettive 3 colonne sia
della tabella di origine che quella di destinazione(e non il nome
della prima colonna) e che 'arance§rosse§sicilia' è il primo record?
grazie a chi vorrà gentilmente aiutarmi!
roberto

 
Huh? Usando una sintassi SQL corretta, per esempio?
INSERT INTO "frutta" ("nome","colore","origine") VALUES
('arance','rosse','sicilia')
-- 
Fabrizio "Hermooz" Ermini

 ('arance','rosse','sicilia')
Il problema č che la tabella CSV da importare si trova fisicamente su
un altro server!
Infatti la funzione IMPORTA ha anche il SFOGLIA che ti consente di
pescare altrove.
Il linguaggio SQL ti consente di importare anche da altro server? Se
sě, come?
grazie
roberto

 sì, come?
A parte che non mi ricordo di aver mai visto una funzione "importa" in 
phppgadmin (sicuro di non confonderti con la funzione che fa l'upload di 
uno script sql?), i problemi sono due: uno è l'accessibilità del file 
con i dati, l'altro è l'esecuzione dell'import.
Il secondo problema si affronta con gli strumenti SQL, il primo no.
E poi mi sembra che tu abbia le idee un po' confuse: parli di import da 
file CSV e come esempio riporti uno statement INSERT, che non ha nulla a 
che vedere con l'import di quel tipo di file (che si fa con il comando 
COPY).
Più precisamente: com'e' fatto 'sto file che devi importare, dove ce 
l'hai e dove lo devi importare?
-- 
Fabrizio "Hermooz" Ermini

 l'hai e dove lo devi importare?
il file è un file di testo del tipo CSV, ovvero la tabella
"fruttafresca" così fatta:
arance§rosse§sicilia
ciliege§amarena§veneto
che si trova su un server al quale ho pieno accesso e che devo
importare in pgsql (che si trova sul web server) su una tabella
"frutta" con le colonne "nome colore origine".
Riguardo l'allarme che compare, è esattamente questo:
Errore SQL:
ERROR:  column "arance§rosse§sicilia" of relation "frutta" does not
exist
Nel costrutto:
INSERT INTO "frutta" ("arance§rosse§sicilia") VALUES
('ciliege§amarena§veneto')
cioè non riesce a capire che il carattere "§" è il separatore di
colonna (ma infatti non ho avuto neppure l'opportunità di dirglielo).
Ho provato anche a sostituire il carattere "§" con una più ortodossa
","
ma il risultato è lo stesso.
grazie per il gentile aiuto!
roberto
 
il fi

 grazie per il gentile aiuto!
de nada.
Bye!
-- 
Fabrizio "Hermooz" Ermini

 
il tuo suggerimento è stato ottimo!
ho sostituito "§" con ";" ed ho aggirato le rigide routines di
phppgadmin aprendo direttamente la sessione psql, e così sono riuscito
ad importare la mia tabella di circa 1.500 records.
ora però mi servirebbe ancora un aiutino!
ovvero avrei la necessità di aggiungere un campo contatore che mi
numeri in modo univoco e crescente, partendo da 1, i miei 1.500
records già importati.
ho provato invano a farlo con l'interfaccia grafica phppgadmin, ma non
ho trovato la funzione SERIAL, non ho trovato come definire la chiave
primaria, e pur avendo settato il campo contatore a "integer default
nextval ('contatore') (previa creazione della sequenza 'contatore'),
non mi è comparso alcun numero nella nuova colonna!
volendo aggirare anche 'sta volta l'interfaccia grafica, quale comando
dovrei dargli direttamente da psql per riuscire a numerare i records
della mia tabella importata???
grazie
roberto
p.s.: ma esiste da qualche parte qualche guida di 'sto cavolo di
phppgadmin?

 phppgadmin?
Mi pare che abbia una sua documentazione in linea, no?
Senno' c'e' sempre la documentazione di postgres...
-- 
Fabrizio "Hermooz" Ermini

...

Perfetto!
ho fatto il travaso creando una nuova tabella e tutto è andato OK.
Ri-grazie.
roberto

 roberto
Come segno tangibile della tua riconoscenza verso il mio consiglio, mi 
sento di suggerirti di sforzarti di quotare un po' meglio :-)
bye!
-- 
Fabrizio "Hermooz" Ermini