problemas con las comillas ("")
Hola, estoy utilizando interbase 6 que viene con delphi 6, mi problema es que en mi aplicación nopuedo usar "comillas" ni 'apostrofes' porque el sistema las toma como parte del query de actualización y me da errores.
Gracias por la ayuda. saludos |
Si estás utilizando SQL directamente puedes utilizar parámetros al construir las sentencias a ver si así no te da problemas.
|
Yo tube el mismo problema con Sybase SQL Server y utilizo lo siguiente:
Query.SQL.Add ('Select * from basededatos where clave='+chr(39)+edit1.text+chr(39)); Esto lo hice ya que en Sybase la ' es la que se utiliza para los textos y no " |
puedes utilizar la funcion QuotedStr de la unidad SysUtils de la forma:
texto := QuotedStr(Edit1.Text); Query.SQL.Add ('Select * from basededatos where clave='+texto); |
podrias simplemente cambiar el atributo de dialecto como sigue
IBDatabase1.SQLdialect:=1; |
Creo que no me explique bien, mi problema es cuando el usuario captura comillas, por ejemplo en un campo que se llama nombre de la clinica y el usuario escribe:
Clinica veterinaria "ALF" es el usuario quien las escribe y es donde me da el error saludos |
En el evento OnChange del campo puedes crearte un procedimiento que busque las comillas y las elimine.
Un Saludo. |
dentro de la cena solo agrega dos comillas simples.
Código:
'esto es un '' a simple comilla' |
La solucion sencilla y mas correcta a mi parecer, te la han dado en la primera respuesta: usar parametros, ejemplo:
Código:
Query.SQL.Text:= 'SELECT * FROM TABLA WHERE NOMBRE=:TEXTO'; |
La franja horaria es GMT +2. Ahora son las 08:08:32. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi