Ir para conteúdo
  • Cadastre-se

dev botao

Caracteres Especiais MySQL


Ver Solução Respondido por bnobre,
  • Este tópico foi criado há 2525 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

  • Membros Pro

Olá a todos,

Eu possuo uma ZQuery com um ZUpdateSQL, especificamente para gravar arquivos XMLs em uma tabela MySQL.

Mas na verdade eu queria fazer direto com um comando "UPDATE TABELA SET" sem o uso do ZUpdateSQL, o problema é que tenho receio de surgirem caracteres especiais no XML, como apostrofos por exemplo que o MySQL não reconhece sem a barra invertida antes. Gravando pela ZQuery com o auxilio do ZUpdateSQL eu não tenho problemas, o componente trata isso automaticamente.

Alguma dica para que eu possa fazer isso direto (sem o ZUpdateSQL) escapando os caracteres especiais?

Desde já agradeço a atenção de todos

Link para o comentário
Compartilhar em outros sites

  • Membros Pro
1 hora atrás, BigWings disse:

Não uso muito o MySQL, mas para a questão dos apóstrofos você pode usar a QuotedStr().

Ok, mas basicamente todas as linguagens de banco de dados possuem caracteres especiais, como a SQL por exemplo.

Na que você utiliza também deve ter. Como trata esse tipo de "necessidade" em seus códigos?

Link para o comentário
Compartilhar em outros sites

  • Membros Pro
  • Solution

Nossa... na verdade é muito simples, que pena que demorei tanto tempo para achar a resposta.

Basta usar parâmetros e deixar o componente cuidar do resto.

dtm_banco.z_formulas.SQL.Text := 'UPDATE TBL_NFCEVENDAS SET xml = :xml WHERE id_nfcevendas = :id';
dtm_banco.z_formulas.ParamByName('xml').AsString := mem_xml.Text;
dtm_banco.z_formulas.ParamByName('id').AsString := IntToStr(id);
dtm_banco.z_formulas.ExecSQL;

No ZUpdateSQL aparentemente se usa parâmetros também, só nunca soube como codificar, mas pelo visto é assim já que funcionou.

Abraços a todos

Editado por doidopb
Link para o comentário
Compartilhar em outros sites

  • Este tópico foi criado há 2525 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.