--
Matheus de Oliveira


2012/8/21 Marcelo Silva <[email protected]>

>   Campo Text no Postgres é tipo Blob ?
>
> Por exemplo, se eu gravo em um campo Text a string
>
> {\rtf1\ansi\deff0{\fonttbl{\f0\fnil MS Sans Serif;}{\f1\fnil\fcharset0 MS
> Sans Serif;}}
> \viewkind4\uc1\pard\lang1046\b\f0\fs16 IMPORTANTE \b0
> \par
> \par \i\f1 Teste de documento\i0
> \par
> \par Teste de \ul documento\ulnone
> \par
> \par Teste de \strike documento\strike0\f0
> \par }
>
> Ele dá o erro:
>
> ---------------------------
> Debugger Exception Notification
> ---------------------------
> Project Project1.exe raised exception class EZSQLException with message
> 'SQL Error: ERRO:  sequência de bytes é inválida para codificação "UTF8":
> 0x00'. Process stopped. Use Step or Run to continue.
> ---------------------------
> OK   Help
> ---------------------------
>

O PostgreSQL faz validação dos caracteres para ver se é realmente UTF-8. Se
você não precisa dessa validação use campo do tipo bytea ou lo (seria o
equivalente ao BLOB).

Isso aí tá com cara de problema de escape (por causa das barras
invertidas). Como você está gravando?


> Já em um campo Character ele grava
>
> Qual o problema?
>

Essa eu não entendi, internamente varchar e text é a mesma coisa [1], [2].

[1] http://www.depesz.com/2010/03/02/charx-vs-varcharx-vs-varchar-vs-text/
[2] http://www.postgresql.org/docs/9.1/static/datatype-character.html

--
Matheus de Oliveira
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a