erreur de syntaxe sur ou près de “(” COPIE à PARTIR AVEC ( FORMAT csv, DÉLIMITEUR E'\t' CITATION '*', en-TÊTE de faux, de CODAGE 'UTF8')
Je suis de l'Importation de données à partir d'un fichier txt
C'est la table
CREATE TABLE test.geonames_load(geonameid INTEGER PRIMARY KEY,
name VARCHAR(200),
asciiname VARCHAR(200),
alternatenames VARCHAR,
latitude FLOAT8,
longitude FLOAT8,
feature_class char(1),
feature_code VARCHAR(10),
country_code VARCHAR(2),
cc2 VARCHAR(60),
admin1 VARCHAR(20),
admin2 VARCHAR(80),
admin3 VARCHAR(20),
admin4 VARCHAR(20),
population INTEGER,
elevation INTEGER,
dem INTEGER,
timezone VARCHAR(40),
modification VARCHAR(18)
);
Après j'ai essayé de copier à partir d'un fichier txt
COPY test.geonames_load FROM 'C:Program Files/PostgreSQL/8.4/data/US/US.txt' WITH (
FORMAT csv,
DELIMITER E'\t',
QUOTE '*',
HEADER false,
ENCODING 'UTF8'
);
Mais il m'indique une Erreur
D'ERREUR: erreur de syntaxe sur ou près de "(" LIGNE 1: ... à PARTIR de 'C:Programme Files/PostgreSQL/8.4/data/US/US.txt" AVEC ( ^ ********** Erreur ********** Erreur: ERREUR de syntaxe sur ou près de "(" État SQL: 42601 Caractère: 83
- Il vous manque une
/
surC:Program Files/P...
il devrait êtreC:/Program Files/P
Vous devez vous connecter pour publier un commentaire.
La syntaxe de
COPY
a un peu changé dans la version 9.0, comparativement à 8,4En supposant que vous êtes à l'aide de la version 8.4, sur cette base
.../PostgreSQL/8.4/...
chemin,la syntaxe qui s'applique est documenté ici:
http://www.postgresql.org/docs/8.4/static/sql-copy.html
Et il ne permet pas une parenthèse après la
WITH
mot-clé qui est apparu dans la version 9.0, ni laENCODING
option qui est apparu dans 9.1Il semble que vous devez adapter la déclaration à votre version de PostgreSQL.