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

Almacenar queries

Estas en el tema de Almacenar queries en el foro de Mysql en Foros del Web. Hola, Estoy buscando almacenar todas las queries o sentencias, simples o no, a la base de datos en un lugar centralizado, para poder a futuro, ...
  #1 (permalink)  
Antiguo 08/08/2012, 13:41
Avatar de latinpower  
Fecha de Ingreso: septiembre-2010
Ubicación: Canelones
Mensajes: 116
Antigüedad: 13 años, 7 meses
Puntos: 10
Almacenar queries

Hola,

Estoy buscando almacenar todas las queries o sentencias, simples o no, a la base de datos en un lugar centralizado, para poder a futuro, realizar modificaciones sin tener que ir modificando cada instancia de sentencia.

Básicamente estoy trabajando con asp.net y Mysql, y había pesado en dos opciones, la primera, almacenar las queries en stored procedures/functions de mysql y la otra almacenarlos en el asp.net, mediante una clase, un módulo o lo que sea.

¿Qué se acostumbra a hacer en estos casos?
  #2 (permalink)  
Antiguo 08/08/2012, 15:26
Colaborador
 
Fecha de Ingreso: enero-2007
Ubicación: México
Mensajes: 2.097
Antigüedad: 17 años, 3 meses
Puntos: 447
Respuesta: Almacenar queries

Hola latinpower:

Creo que entendí cual es tu problema, pero no creo que almacenar las consultas en la BD sea la mejor solución. Una práctica común es almacenar todas las consultas que utiliza tu aplicación en archivos XML, de tal manera no dejas "Hard Code" en sus páginas. El almacenar las consultas en archivos XML desde mi punto de vista es mucho más flexible para este propósito que la BD, piensa que las consultas pueden ser tan sencillas con un simple

Código MySQL:
Ver original
  1. SELECT campo FROM tabla

Hasta consultas muy complejas, con JOINS. UNIONS, CASE-WHEN ETC... en lo particular te cuento que hace tiempo tuve necesidad de hacer una consulta de alrededor de 50 líneas de código (no me preguntes por qué hacía, pero el caso es que sirvió)... si quisieras almacenar esto en una BD tendrías que declarar tu campo como un varchar TAN GRANDE COMO LA MÁS GRANDE DE TUS CONSULTAS, lo que implicaría un desperdicio de espacio...

El manejo de archivos XML no es tan complicado en .NET, pero esa sería una pregunta para el foro respectivo, no para este foro.

Analiza un poco esta alternativa, creo que te puede servir.

Saludos
Leo.
  #3 (permalink)  
Antiguo 12/08/2012, 19:08
Avatar de latinpower  
Fecha de Ingreso: septiembre-2010
Ubicación: Canelones
Mensajes: 116
Antigüedad: 13 años, 7 meses
Puntos: 10
Respuesta: Almacenar queries

ahí lo pregunte en el foro de asp.net, podrías contestarme cómo hacerlo por ahí?.

Gracias.
  #4 (permalink)  
Antiguo 13/08/2012, 07:57
Avatar de 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, 4 meses
Puntos: 2658
Respuesta: Almacenar queries

Cita:
¿Qué se acostumbra a hacer en estos casos?
Stored Procedures.
Las aplicaciones de cierta envergadura, importancia y de gran acceso desarrollan toda la lógica de SQL en stored procedures, dejando en ASP (o lo que sea) sólo la tarea de administrar sus llamados, parametrizaciones y procesamiento de resultados.
Los XML, en general, se usan para manejar un conjunto de parámetros que afecten el uso de algunas partes del software, pero guardar las consultas, es una mala idea: Todo host es vulnerable.
Si tienes las consultas en archivos XML es lo mismo que dejar la llave de tu casa debajo del felpudo. Que no se vea, no quiere decir que alguien no se de cuenta que está allí y te la robe.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #5 (permalink)  
Antiguo 13/08/2012, 14:18
Avatar de latinpower  
Fecha de Ingreso: septiembre-2010
Ubicación: Canelones
Mensajes: 116
Antigüedad: 13 años, 7 meses
Puntos: 10
Respuesta: Almacenar queries

Gracias. yo creía que los stored procedures se usaban solo para "procedimientos", porque si no se llenaba la DB de los mismos.

Migraré los select a ellos entonces.

Etiquetas: almacenar, queries, sql
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 17:03.