Vous n'êtes pas identifié(e).
- Contributions : Récentes | Sans réponse
#1 02/03/2018 00:07:06
- parora0124
- Membre
COPY Command with comma in string values - Postgresql 10
-- I am trying to copy the contents of a dat file to a table in PostgreSQL but getting errors. The dat file has the following:
1, '{{text}},{{NoName}}:{test},{OneName}:{test}'
Table Schema:
Create Table TestInfo (ID int, TestValues text);
I run the following query:
COPY Test from '/opt/Data/TestInfo.dat' WITH DELIMITER AS ',' NULL AS '';
but get the following error
ERROR: extra data after last expected column
Can some one please help me getting the contents of the dat file copied to the DB?
Thanks
Dernière modification par parora0124 (02/03/2018 00:18:08)
Hors ligne
#2 02/03/2018 02:20:51
- jmarsac
- Membre
Re : COPY Command with comma in string values - Postgresql 10
Bonsoir,
Ce forum est francophone, c'est pourquoi je vous réponds en français.
Il faut indiquer à Postgres que la partie entre guillemets simples représente une seule valeur de type texte.
CREATE TABLE t1 (id INTEGER, testvalues TEXT);
COPY t1 FROM '/opt/Data/TestInfo.dat' WITH CSV DELIMITER AS ',' QUOTE AS '''' NULL AS '';
SELECT * FROM t1;
NB: il est recommandé d'utiliser des noms d'objets (tables, colonnes, etc..) en minuscules (Postgres les convertira de toute façon en minuscules à moins de les mettre entre guillemets doubles)
Hors ligne
#3 02/03/2018 19:16:09
- parora0124
- Membre
Re : COPY Command with comma in string values - Postgresql 10
Merci beaucoup
Hors ligne