Tutto comincia con il tentativo di fare girare una query in PostGres ... Il nuovo [per me] sistema mi risponde male... Syntax Error dice...

Qualche sospetto sul formato del file l'ho avuto subito visto che proveniva da un'email e a volte qualche client di posta maleducato cambia il fine riga da Unix a Windows 

Unix -> 0A [Line Feed - Fine Riga]

Windows -> 0D 0A [0D Carriage Return - Ritorno Carrello] 

Il comando file di linux  non dice quello che mi aspetto in questo caso e cioè

ASCII text, with CRLF line terminators ma uno strano messaggio

UTF-8 Unicode (with BOM) text  .

Copio - incollo in un nuovo file, ma niente il messaggio è sempre presente BOM.

Ma cos'è sto BOM? Wikipedia dice

Quando sappiamo che un file o altra sequenza di dati è di testo e nonbinario, il BOM permette di identificare subito se il testo è in formatoUnicode e, in caso affermativo, il tipo esatto di codifica. Naturalmente ciò è utile quando non sappiamo a priori la codifica utilizzata; se invece questa è sempre nota, i byte del BOM possono risultare inutili o addirittura dannosi.

Infatti: dannoso è la parola giusta!

    

ecco la sequenza "killer" ..... una volta rimossa PostGres (psql) non ha più niente in contrario ad eseguire la query!!


Commenti

Aggiungi un commento

Plain text

  • Nessun tag HTML consentito.
  • Indirizzi web o e-mail vengono trasformati in link automaticamente
  • Linee e paragrafi vanno a capo automaticamente.