300px-ZendFramework-Logo

Problema de encoding no Zend_Db

Estava eu programando alegre e contente a minha Stored Procedure. Testei e testei a minha SP no MySQL Query Browser, ela estava perfeita. Então já era a hora de coloca-la no meu código.
Quando executo-a, o Zend Framework me mostra o seguinte erro:


Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[42S22]: Column not found: 1054 Unknown column 'a.Código' in 'where clause'' in /xxx/xxx/xxx/sp.php:37

Infelizmente ainda encontramos banco de dados aonde novatos DBAS colocam nomes de campo com acento, espaço e todos os caracteres possíveis que possam causar problemas futuros.

Então resolvo entrar no canal do IRC #zftalk na freenode.net, e faço a pergunta se alguém já pode me ajudar e recebo a resposta rtfm (read the fuck manual), então vamos ao manual.

Praticando o rtfm, encontro a resposta em http://br.php.net/manual/pt_BR/ref.pdo.php#68103

E resolvo meu problema colocando :

antes de chamar a minha SP.

Tabela:

Stored Procedure:

Código ZF:

Espero ter ajudado alguém com isso.

Posted in PHP

One thought on “Problema de encoding no Zend_Db

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios são marcados com *