Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

collate en procedure

Estas en el tema de collate en procedure en el foro de Mysql en Foros del Web. Hola gente, por x motivo unas procedures dejaron de funcionar y para resolver el problema tuvimos que aplicar COLLATE en los filtro por ejemplo: @import ...
  #1 (permalink)  
Antiguo 19/06/2014, 16:38
Avatar de Patriarka  
Fecha de Ingreso: enero-2011
Ubicación: Moreno, Buenos Aires, Argentina
Mensajes: 2.851
Antigüedad: 13 años, 10 meses
Puntos: 288
collate en procedure

Hola gente,
por x motivo unas procedures dejaron de funcionar y para resolver el problema tuvimos que aplicar COLLATE en los filtro

por ejemplo:

Código MySQL:
Ver original
  1. and codigo_agrupamiento collate latin1_general_ci = AGRUPAMIENTO collate latin1_general_ci
  2.                  and tipo_movimiento  collate latin1_general_ci  = TIPOMOV  collate latin1_general_ci

la pregunta es si esto hace mas lenta la query?
sin el collate la query era veloz, pero aplicando este cambio se hizo muy lenta

gracias
  #2 (permalink)  
Antiguo 20/06/2014, 06:42
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: collate en procedure

Toda conversión, imnplicita o no, implica aumento del tiempo del procesamiento. A veces es tan poco que resulta imperceptible; otras (en especial cuando procesa muchos millones de datos) puede tener un visible impacto.
De todos modos, a mi entender, si un SP "deja de funcionar" significa que funcionaba, y que algo cambió en el servidor, que aumentó el delay. Lo que hay que determinar es qué cambió para poder resolverlo, y no crear "parches" en los SP que pueden terminar causando otros errores.

¿Tienes idea de qué cambios se hicieron en el servidor, antes de que empezaran los problemas en los SP?
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 20/06/2014, 07:00
Avatar de Patriarka  
Fecha de Ingreso: enero-2011
Ubicación: Moreno, Buenos Aires, Argentina
Mensajes: 2.851
Antigüedad: 13 años, 10 meses
Puntos: 288
Respuesta: collate en procedure

Hola,
en realidad no cambió nada, sino que el problema es que en produccion las procedures funcionan bien actualmente, pero en el server de pruebas y en mi localhost los procedures son lentisimos

la verdad es que no se si para usar las procedures hay que configurar algo en particular
  #4 (permalink)  
Antiguo 20/06/2014, 07:44
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: collate en procedure

Cita:
la verdad es que no se si para usar las procedures hay que configurar algo en particular
En realidad no hay mucho por configurar, pero yo pensaría que tienes muchos problemas en el servidor de pruebas (habría que verificar procesos huérfanos, consistencia de datos, bastantes cosas). Por mi experiencia es bastante fácil que las maquinas locales y los servidores de prueba tengan problemas de performance, en la empresa tenemos cuatro ambientes de prueba con cuatro servidores, y en ninguno todas las cosas andan demasiado bien.
En cualquier caso, mientras no haya caídas por timeout, y productivamente sean veloces, no deberías preocuparte por eso.
Por otro lado, por experiencia también, usar SP y SF es la mejor forma de segurizar la base de datos y las transacciones críticas. No es recomendable usar queries directas.
De hecho, en la empresa donde trabajo, el área de seguridad informática prohíbe estrictamente cualquier acceso a la base si no es por SP/SF.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Etiquetas: collate, procedure
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 21:58.