Foros del Web » Programando para Internet » PHP » Symfony »

problema utilizar funciones de postgres en query builder

Estas en el tema de problema utilizar funciones de postgres en query builder en el foro de Symfony en Foros del Web. hola amigos estoy realizando un formulario de busqueda en symfony 2.1 pero como motor de base de datos tengo postgres 9.1. he creado un dql ...
  #1 (permalink)  
Antiguo 23/07/2013, 19:23
 
Fecha de Ingreso: abril-2013
Mensajes: 29
Antigüedad: 11 años, 7 meses
Puntos: 0
problema utilizar funciones de postgres en query builder

hola amigos estoy realizando un formulario de busqueda en symfony 2.1 pero como motor de base de datos tengo postgres 9.1.


he creado un dql query builder para crear la funcion que recoje los parametros y muestra los resultados sin embargo como puedo hacer para que dql entienda la siguiente instruccion

SELECT TRANSLATE(campo,'ÁÉÍÓÚáéíóú','AEIOUaeiou') ilike translate('%cadena a buscar%','ÁÉÍÓÚáéíóú','AEIOUaeiou')";


ya que symfony me indica un error en la clausula TRANSLATE e ILIKE, funciones exclusivas de postgres, quisiera no utilizarlas para hacer mas portable mi proyecto, sin embargo al quitar translate el postgres no es capaz de incluir las palabras tildadas, es decir se vuelve sensible y no encuentro como corregir eso.
  #2 (permalink)  
Antiguo 24/07/2013, 06:52
Avatar de masterpuppet
Software Craftsman
 
Fecha de Ingreso: enero-2008
Ubicación: Montevideo, Uruguay
Mensajes: 3.550
Antigüedad: 16 años, 11 meses
Puntos: 845
Respuesta: problema utilizar funciones de postgres en query builder

Puedes utilizar Native SQL o bien agregar custom functions al DQL, sobre la portabilidad, si son solamente un par de funcionalidades y están bien documentadas no deberías tener mayores problemas en hacer un port en caso de ser necesario el migrar de vendor.

Saludos.
__________________
http://es.phptherightway.com/
thats us riders :)

Etiquetas: builder, funciones, postgres, query
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 00:39.