In order for this site to work correctly we need to store a small file (called a cookie) on your computer. Most every site in the world does this, however since the 25th of May 2011, by law we have to get your permission first. Please abandon the forum if you disagree.

Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.

Donde poner el cdigo?

SQL databases
jose.luis
Posts: 1633
Joined: Fri Oct 14, 2005 10:56 pm

Donde poner el cdigo?

Postby jose.luis » Fri Mar 02, 2007 10:35 am

Hola,
Esta mañana mientras me divertía diseñando una base de datos para una
aplicación de gestión comercial me paré a pensar en procesos que ocurren
cuando, por ejemplo, añadimos una linea a un albarán de venta.
Simplificando, esos procesos son:
a. Actualizar movimiento de almacén en tabla mov_artirculos
b. Actualizar stocks por almacén en tabla stocks_almacen
c. Actualizar estadísticas de venta en tabla articulo
d. ...
Y me puse a valorar cual podría ser la mejor opción: sin incluirlos en la
base de datos o no. Para este tipo de operaciones (que son siempre las
mismas y no son sensibles a cambios)... ¿que opináis? ¿mejor en la base de
datos? ¿mejor por código de programa?
Saludos,
José Luis Capel
Xevi
Posts: 1706
Joined: Thu Sep 08, 2005 12:58 pm

Donde poner el cdigo?

Postby Xevi » Fri Mar 02, 2007 12:06 pm

José Luis,
Antes, con Clipper, siempre ponía las constantes que necesitaba utilizar en
mi aplicación en una DBF, pero desde que he aprendido a utilizar la clase
TIni, creo mi etiqueta [Xevi] y las entradas que total... me sirven para
agilizar mi aplicación...
ConfirmarBajas=S
PantallaBienvenida=N
....
y cargo estos valores en la clase TAppData con unos valores predeterminados
si no existen las entradas, para utilizarlos en toda mi aplicación.
Un Saludo,
Xevi.
"José Luis Capel - Aicom" <jose.luis@iaicom.com> escribió en el mensaje
news:45e7efb0$1@news.xailer.com...
> Hola,
>
> Esta mañana mientras me divertía diseñando una base de datos para una
> aplicación de gestión comercial me paré a pensar en procesos que ocurren
> cuando, por ejemplo, añadimos una linea a un albarán de venta.
> Simplificando, esos procesos son:
>
> a. Actualizar movimiento de almacén en tabla mov_artirculos
> b. Actualizar stocks por almacén en tabla stocks_almacen
> c. Actualizar estadísticas de venta en tabla articulo
> d. ...
>
> Y me puse a valorar cual podría ser la mejor opción: sin incluirlos en la
> base de datos o no. Para este tipo de operaciones (que son siempre las
> mismas y no son sensibles a cambios)... ¿que opináis? ¿mejor en la base de
> datos? ¿mejor por código de programa?
>
> Saludos,
> José Luis Capel
>
>
jose.luis
Posts: 1633
Joined: Fri Oct 14, 2005 10:56 pm

Donde poner el cdigo?

Postby jose.luis » Fri Mar 02, 2007 12:34 pm

Xevi,
>
> Antes, con Clipper, siempre ponía las constantes que necesitaba utilizar
> en mi aplicación en una DBF, pero desde que he aprendido a utilizar la
> clase TIni, creo mi etiqueta [Xevi] y las entradas que total... me sirven
> para agilizar mi aplicación...
> ConfirmarBajas=S
> PantallaBienvenida=N
> ...
> y cargo estos valores en la clase TAppData con unos valores
> predeterminados si no existen las entradas, para utilizarlos en toda mi
> aplicación.
>
>
Me refiero a si usar los disparadores de Sql o poner el código en PRG.
Saludos,
José Luis Capel
miguel
Posts: 364
Joined: Thu Jul 02, 2009 1:09 pm

Donde poner el cdigo?

Postby miguel » Fri Mar 02, 2007 12:48 pm

Jose Luis, yo me inclino a usar los disparadores, de esta forma aseguras
la robustez en cuanto a que posteriormente puedas hacer algo sobre la
misma tabla ej. en php y no tengas en cuenta algún tema de actualización
que ahora tienes fresco en tu mente, por otra parte una vez hecho
simplificas mucho la labor de desarrollo. Yo siempre que puedo a si lo
hago a no ser que sea algo muy puntual.
Saludos. Miguel A. Torrellas
José Luis Capel - Aicom escribió:
> Xevi,
>
>> Antes, con Clipper, siempre poní­a las constantes que necesitaba utilizar
>> en mi aplicación en una DBF, pero desde que he aprendido a utilizar la
>> clase TIni, creo mi etiqueta [Xevi] y las entradas que total... me sirven
>> para agilizar mi aplicación...
>> ConfirmarBajas=S
>> PantallaBienvenida=N
>> ...
>> y cargo estos valores en la clase TAppData con unos valores
>> predeterminados si no existen las entradas, para utilizarlos en toda mi
>> aplicación.
>>
>>
>
> Me refiero a si usar los disparadores de Sql o poner el código en PRG.
>
> Saludos,
> José Luis Capel
>
>
User avatar
jasm
Posts: 447
Joined: Tue Jul 08, 2008 8:12 pm

Donde poner el cdigo?

Postby jasm » Fri Mar 02, 2007 5:12 pm

Disparadores sin lugar a dudas. A no ser que existan cosas puntuales.
antonio.ortega
Posts: 124
Joined: Wed May 17, 2006 10:50 am

Donde poner el cdigo?

Postby antonio.ortega » Fri Mar 02, 2007 9:35 pm

En el Sistema informático de E-Bay por ejm. se descarto la posibilidad de
usar este tipo de herramienta porque tenian la prevision de que podrían
tener que llegar a cambiar de Motor de Base de Datos, y con esto te quedas
muy comprometido con un fabricante, prefierieron ponerlo en sus "prg's".
Claro está que como todo, depende de las características del desarrollo.
Antonio F. Ortega
User avatar
jasm
Posts: 447
Joined: Tue Jul 08, 2008 8:12 pm

Donde poner el cdigo?

Postby jasm » Fri Mar 02, 2007 9:46 pm

Antonio,
Si empezamos con las dudas de si vamos a cambiar de motor de bases de
datos con un proyecto en producción mal vamos. De todas formas, se haga
como se haga, si se hace un cambio de motor de datos de un proyecto en
producción, habrá que retocar código de la base de datos y código del
programa (y si alguien dice lo contrario no sabe de lo que habla :-P).
Saludos
Jose A. Suarez
miguel
Posts: 364
Joined: Thu Jul 02, 2009 1:09 pm

Donde poner el cdigo?

Postby miguel » Sat Mar 03, 2007 10:59 am

Antonio,
En caso de cambiar de motor, yo pienso que siempre será mejor volver a
reprogramar la BD que todos los programas que manejen la misma, de una
atacada tienes toda la operativa de nuevo en marcha, es mi opinión
particular, por que como dice Jose Alfonso de tocar el código no te
salva nadie y siempre será mejor retocar una sola cosa que 163 posibles
programas que estén atacando a la misma Base de Datos.
Saludos. Miguel A. Torrellas
Antonio F. Ortega escribió:
> En el Sistema informático de E-Bay por ejm. se descarto la posibilidad de
> usar este tipo de herramienta porque tenian la prevision de que podrí­an
> tener que llegar a cambiar de Motor de Base de Datos, y con esto te quedas
> muy comprometido con un fabricante, prefierieron ponerlo en sus "prg's".
> Claro está que como todo, depende de las caracterí­sticas del desarrollo.
>
> Antonio F. Ortega
>
>
>
>
>
antonio.ortega
Posts: 124
Joined: Wed May 17, 2006 10:50 am

Donde poner el cdigo?

Postby antonio.ortega » Sat Mar 03, 2007 11:30 am

Solo comentaba el caso del e-bay, que imagino sabrán lo que hacen. :-) , no
obstante supongo que lo de poner el código en la base de datos debe ser
conveniente, porque por algo lo habrán hecho, y respecto de modificar muchos
programas no lo tengo muy claro, porque supongo que se puede estructurar un
programa de manera que sea una sola función la que haga determindado
"trabajo", por lo que si decido cambiar algo, solo deberé tocar esa única
función, que sería lo mismo que tocar la función almacenada en la base de
datos.
Antonio F. Ortega
Rolando
Posts: 191
Joined: Mon May 08, 2006 2:10 pm

Donde poner el cdigo?

Postby Rolando » Sat Mar 03, 2007 2:12 pm

Hola:
Para mi sin ninguna duda hay que utilizar tanto los disparadores
como los procedimientos almacenados, en cualquier sistema cliente-servidor
indudablemente la parte mas débil es la conexión, cuanto menos la utilicemos
mejor va a funcionar todo el sistema, esa es mi opinión.
Saludos.
"José Luis Capel - Aicom" <jose.luis@iaicom.com> escribió en el mensaje
news:45e7efb0$1@news.xailer.com...
> Hola,
>
> Esta mañana mientras me divertía diseñando una base de datos para una
> aplicación de gestión comercial me paré a pensar en procesos que ocurren
> cuando, por ejemplo, añadimos una linea a un albarán de venta.
> Simplificando, esos procesos son:
>
> a. Actualizar movimiento de almacén en tabla mov_artirculos
> b. Actualizar stocks por almacén en tabla stocks_almacen
> c. Actualizar estadísticas de venta en tabla articulo
> d. ...
>
> Y me puse a valorar cual podría ser la mejor opción: sin incluirlos en la
> base de datos o no. Para este tipo de operaciones (que son siempre las
> mismas y no son sensibles a cambios)... ¿que opináis? ¿mejor en la base de
> datos? ¿mejor por código de programa?
>
> Saludos,
> José Luis Capel
>
>
miguel
Posts: 364
Joined: Thu Jul 02, 2009 1:09 pm

Donde poner el cdigo?

Postby miguel » Sat Mar 03, 2007 3:11 pm

Rolando,
Totalmente de acuerdo, balancear los dos sistemas con un buen criterio
sin duda será la decisión mas acertada, pero en la medida que se pueda
cuantas mas cosas haga el servidor menos se utilizará la conexión, claro
está que también habrá que tener en cuenta no sobrecargarlo contemplando
siempre la cantidad de conexiones simultaneas tenga este.
Saludos. Miguel A. Torrellas
Rolando Sarrailh escribió:
> Hola:
> Para mi sin ninguna duda hay que utilizar tanto los disparadores
> como los procedimientos almacenados, en cualquier sistema cliente-servidor
> indudablemente la parte mas débil es la conexión, cuanto menos la utilicemos
> mejor va a funcionar todo el sistema, esa es mi opinión.
> Saludos.
>
> "José Luis Capel - Aicom" <jose.luis@iaicom.com> escribió en el mensaje
> news:45e7efb0$1@news.xailer.com...
>> Hola,
>>
>> Esta mañana mientras me divertí­a diseñando una base de datos para una
>> aplicación de gestión comercial me paré a pensar en procesos que ocurren
>> cuando, por ejemplo, añadimos una linea a un albarán de venta.
>> Simplificando, esos procesos son:
>>
>> a. Actualizar movimiento de almacén en tabla mov_artirculos
>> b. Actualizar stocks por almacén en tabla stocks_almacen
>> c. Actualizar estadí­sticas de venta en tabla articulo
>> d. ...
>>
>> Y me puse a valorar cual podrí­a ser la mejor opción: sin incluirlos en la
>> base de datos o no. Para este tipo de operaciones (que son siempre las
>> mismas y no son sensibles a cambios)... ¿que opináis? ¿mejor en la base de
>> datos? ¿mejor por código de programa?
>>
>> Saludos,
>> José Luis Capel
>>
>>
>
>
User avatar
jasm
Posts: 447
Joined: Tue Jul 08, 2008 8:12 pm

Donde poner el cdigo?

Postby jasm » Sat Mar 03, 2007 3:46 pm

Antonio,
> Solo comentaba el caso del e-bay, que imagino sabrán lo que hacen. :-)...
Me permito recordarte que nadie es infalible y los de e-bay no son la
excepción ;-)
Saludos
Jose A. Suarez

Return to “SQL”