Bonjour!
j'ai un petit problème de copie d'un fichier dans une table avec la commande COPY de Postgres : 
En fait j'ai un programme Java dans lequel j'écris :
	
	monstatement.executeUpdate("copy matable from 'monchemin'")
 Sauf que Postgres n'est pas d'accord et me dit :
	
	| 12
 
 | ERREUR:  doit être superutilisateur pour utiliser COPY à partir ou vers un fichier
HINT:  Tout le monde peut utiliser COPY vers stdout ou partir de stdin.La commande \copy de psql fonctionne aussi pour tout le monde. | 
 Comme je n'ai pas très envie que l'utilisateur de mon appli aie les pouvoirs d'un superutilisateur, je remplace mon code java par :
	
	monstatement.executeUpdate("\copy matable from 'monchemin'")
 Evidemment ça ne compile même pas, puisque Java me dit que sur "\c" il y a un :
Il faut donc que je protège mon "\". Je continue avec :
	
	monstatement.executeUpdate("\\copy matable from 'monchemin'")
 Mais là, à l'exécution j'ai l'erreur :
	
	org.postgresql.util.PSQLException: ERROR: syntax error at or near "\"
 Et rajouter des "\" n'y change rien : soit ça compile pas, soit j'ai cette erreur qui m'empêche donc totalement d'utilisater copy.
Je précise qu'écrire la commande "\copy matable from 'monchemin'" à la main dans psql marche très bien.
Est-ce que quelqu'un aurait par hasard eu le même souci que moi et serait arrivé à s'en sortir ? Ou bien si quelqu'un a une idée sur quoi faire, ça me dit bien aussi 
Merci d'avance!
						
					
Partager