PDA

Ver la Versión Completa : Problemas con los Cllatio Drivers.


tin
07-09-2004, 12:39:00
Hola a todos.
Este es un mensaje que continua un hilo que inicié hace unos meses sobre los Collation Drivers de Interbase.
El problema tiene que ver con los acentos en campos Varchar en Interbase.

El driver ES_ES funciona bien siempre que sea comparación exacta es decir.

select * from EMPLEADO where apellido='Perez' COLLATE ES_ES

Esto me devuelve Pérez,PErez,Pèrez.... es decir perfecto.

El problema surge cuando utilizo la clausula LIKE

select * from EMPLEADO where apellido LIKE '%Perez%' COLLATE ES_ES

Que es lo que debo usar para buscar en un campo que contiene nombre y apellidos.

En este caso no funciona y unicamente me devuelve los Perez sin acento.

Si alguien tiene experiencia en este campo agradecería una ayuda.

Saludos.

guillotmarc
07-09-2004, 13:36:20
Hola.

Prueba con :

select * from EMPLEADO where apellido containing 'Perez' COLLATE ES_ES

Saludos.

tin
07-09-2004, 17:18:38
Pues ya lo he resuelto, ha sido un poco laborioso pero se ha resuelto:

He creado una UDF que me convierte 'é' en 'e' por ejemplo.

de esta forma la consulta

SELECT * FROM T_EMPLEADO WHERE F_ACC(NOMBRE) LIKE '%Perez%';

Funciona perfecta y me devuelve lo que me tiene que devolver.

Gracias por las sugerencias Marc.

PD:_ Si alguien quiere la UDF que me diga cosas.

Saludos.