[Gfoss] inserire nuove righe in una tabelle postgresql

Emilia Venturato venturato at faunalia.it
Tue Mar 13 18:21:05 CET 2007


Ciao Luca,
1. si' e' possibile importare una tabella che hai in foglio di calcolo.
Ci sono vari modi:

a. se usi phppgadmin puoi importare direttamente nella tabella
precedentemente creata i dati con il pulsante importa, dopo aver salvato
il tuo foglio di calcolo in formato .csv. Attenzione che i campi devono
avere lo stesso ordine nella tabella e nel foglio di calcolo.

b. se vai da riga di comando (psql) puoi:
salvare il tuo foglio di calcolo in .csv e importarlo nella tabella
tramite il comando COPY
http://www.postgresql.org/docs/7.3/interactive/sql-copy.html

2. per gli errori:
a. INSERT INTO dati_movimenti_turistici (codice_istat, 1960_1965)
VALUES (004098, 2683);

visto che codice_istat e' un varchar forse l'errore sta nel fatto che
dovresti mettere gli apici a '004098'.
Prova se e' questo.

Ho visto anche che le date nei tuoi campi non sono sempre scritte uguali
(hai sia - che _) non so se questo puo' crearti confusione perche'
rischi di scriverlo nel modo sbagliato mentre fai le queries.

Per richieste cosi' legate a postgresql consiglio a tutti di iscriversi
alla mailing list italiana di pg

http://lists.psql.it/mailman/listinfo/postgresql-it

ciao
Lia



Luca Delucchi ha scritto:
> Ciao a tutti sto cercando di inserire alcuni dati in una tabella, ma mi
> vengono dati alcuni errori:
>
> datageo=# \d dati_movimenti_turistici
>      Tabella "public.dati_movimenti_turistici"
>   Colonna    |          Tipo          | Modificatori
> --------------+------------------------+--------------
> codice_istat | character varying(6)[] | not null
> 1960_1965    | numeric                |
> 1965-1970    | numeric                |
> 1970-1975    | numeric                |
> 1975-1980    | numeric                |
> 1980-1985    | numeric                |
> 1985-1990    | numeric                |
> 1995-2000    | numeric                |
> 2000-2005    | numeric                |
>
> datageo=# INSERT INTO dati_movimenti_turistici (codice_istat, 1960_1965)
> VALUES (004098, 2683);
> ERROR:  syntax error at or near "1960" at character 53
> RIGA 1: ...SERT INTO dati_movimenti_turistici (codice_istat,
> 1960_1965)...
>                                                             ^
> datageo=# INSERT INTO dati_movimenti_turistici (codice_istat) VALUES
> (004098);
> ERROR:  column "codice_istat" is of type character varying[] but
> expression
> is of type integer
> HINT:  Devi riscrivere o eseguire un casting dell'espressione
>
>
> Oltre ad inserire i valori in questo modo è possibile importare una
> tabella
> di un foglio di calcolo in una tabella di un database?
>
> Grazie
> Luca
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> Gfoss mailing list
> Gfoss a faunalia.com
> http://www.faunalia.com/cgi-bin/mailman/listinfo/gfoss
>   

-- 
Emilia Venturato
email+jabber: venturato a faunalia.it
www.faunalia.it
Tel: (+39) 347-2770007 Tel+Fax: (+39) 0587-213742
Piazza Garibaldi 5 - 56025 Pontedera (PI), Italy




More information about the Gfoss mailing list