Comment spécifier un onglet dans une postgres avant la fin de la COPIE
Je voudrais utiliser le psql "\copie de la commande" extraire les données à partir d'un fichier délimité par des tabulations dans Postgres. Je suis l'aide de cette commande:
\copy cm_state from 'state.data' with delimiter '\t' null as ;
Mais je suis de cet avertissement (le tableau se charge très bien):
WARNING: nonstandard use of escape in a string literal
LINE 1: COPY cm_state FROM STDIN DELIMITER '\t' NULL AS ';'
HINT: Use the escape string syntax for escapes, e.g., E'\r\n'.
Comment puis-je spécifier un onglet si '\t' n'est pas correct?
- Essayez ce que le message d'erreur suggère:
\copy cm_state from 'state.data' with delimiter E'\t' null as ';'
- Oui, vous avez raison. Je n'ai pas vu le premier "E" sur le message d'erreur. Merci beaucoup!
- E commence une séquence d'échappement. Pensez à E beaucoup comme vous le feriez avec une double chaîne de caractères entre guillemets dans la C. E " \t == "\t".
Vous devez vous connecter pour publier un commentaire.
Utilisation
E'\t'
dire postgresql il peut y avoir des caractères d'échappement dans là:COPY delimiter must be a single one-byte character
pour moi. L'ajout d'ici pour les moteurs de recherche peuvent ramasser sur elle.vous pouvez le faire
copy cm_state from stdin with (format 'text')
$$\t$$
ne semble pas fonctionner, bizarrement.pg_dump
sans spécifier d'autres options.