Ver Mensaje Individual
  #2 (permalink)  
Antiguo 16/09/2013, 06:54
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 11 meses
Puntos: 2658
Respuesta: Obviar caracteres especiales en consulta

Por lo pronto, lo mejor es que no se pongan nombres que contengan comas, puntos o cualquier otro caracter no alfanumérico.
Por otro lado, si ese texto pertenece a la descripcion del negocio, no habría problemas, pero si es una lista separada por comas, es una gran metida de pata, porque representaría un campo multivaluado, que en las bases de datos relacionales están total y absolutamente prohibidos. No sólo son una violación del paradigma relacional, sino una transgresión de la normalización, además de causar enormes problemas a la hora de las consultas.
Si no es el caso, olvidate de lo mencionado.
Fuera de eso, en un caso donde tienes un campo con un texto mediano o extenso, que contiene inevitablemente caracteres no alfanuméricos, es conveniente el uso de indices de tipo FULTEXT, y usar las capacidades de tales indices para resolver esas consultas. Como estos indices no tomarán en cuenta los separadores a la hora de buscar, resultarían especialmente funcionales para esto.
En el caso de no ser posible un indice FULLTEXT, siempre puedes acudir a expresiones regulares, para que tome el contenido del campo, parametrizando la posibilidad de existencia de separadores.
En definitiva, hay muchas soluciones posibles, sin necesidad de eliminar nada... Todo depende del esfuerzo que le pongas a aprender SQL mas o menos avanzado...
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)