SP,s o consultas directas a la BBDD?

07/11/2005 - 14:38 por Angel Luis | Informe spam
Hola a todos,

Me gustaría que me dierais vuestras opiniones acerca de que es más
aconsejable implementar en un proyecto en V.B. 6.0 contra una BBDD en sql
server 2000 a la hora de realizar las diferentes transacciones y accesos al
server, utilizar Store Procedures o armar las consultas y atacar
directamente a las tablas?

La aplicación es una aplicación cliente-servidor con 6 conexiones
simultáneas al server como mucho.
Deciros también que no se hace ningún tipo de ataque a dicho server atraves
de Internet ya que los clientes están siempre dentro de la propia LAN de la
empresa.
Actualmente no utilizo ningún tipo de SP sino que armo las consultas y
ataco directamente a la BBDD .

Os agradecería que me además de inclinaros por una u otra opción me dierais
las razones de porque utilizar SP,s o porque consultas en SQL directas a
las tablas.

Gracias de antemano.

Saludos

Angel Luis

soport-e

Preguntas similare

Leer las respuestas

#6 Angel Luis
07/11/2005 - 15:33 | Informe spam
Gracias a todos por vuestras respuestas.

Lo tenía medianamente claro, pero después de vuestras explicaciones ni lo
dudo. -;)

Saludos

Angel Luis
soport-e
"Alejandro Mesa" escribió en el
mensaje news:
Angel Luis,

Hay muchas razones para que uses procedimeintos almacenados en vez de


crear
las sentencias dinamicamente en la aplicacion cliente. Entre ellas:

- Codigo centralizado. Si debes cambiar algo, lo haces en la base de datos
sin interferir con la aplicacion cliente. En cambio deberias cambiar todas
las aplicaciones clientes donde se requiera el cambio.
- Cada vez que tu aplicacion envia una sentencia, sql server debe chequear
la sintaxis y compilar la sentencia, en cambio con sp, sql server puede
reusar el plan de ejecucion. Queda decir que si usas sp_executesql desde


la
aplicacion cliente, tambien se puede reusar el plan de ejecucion
- Inyeccion de codigo hacia sql server. Debes chequear que al armar las
sentencias dinamicamente en la aplicacion cleite, el usuario no haya
inyectado codigo hacia sql. Este tipo de ataque puede ser evitado si


usamos
sps y estos no crean sentencias dinamicas mediante la concatenacion de
parametros
- Reduccion de trafico en la red, pues no es lo mismo hacer la llamada a


un
sp que enviar todo el mamotrepo sobre la red.
- Seguridad, puesto que los sps se ejecutan bajo el contexto de seguridad
del creador y por lo tanto quien lo ejecuta no necesita tener permisos de
acceso directo sobre las tablas manipuladas por el sp. Esto cambia si el


sp
usa sql dinamico

Las virtudes y maldades del SQL dinámico
http://www.hayes.ch/sql/sql_dinamico.html

Inyeccion SQL
http://sql.manivesa.com/Tutoriales+...T/150.aspx

La inyeccion de codigo hacia sql server no esta solamente asosiada a
aplicaciones web, tambien a aplicaciones windows donde se arma la


sentencia
de forma dinamica usando las entradas del usuario para concatenar a una
cadena.


AMB

"Angel Luis" wrote:

> Hola a todos,
>
> Me gustaría que me dierais vuestras opiniones acerca de que es más
> aconsejable implementar en un proyecto en V.B. 6.0 contra una BBDD en


sql
> server 2000 a la hora de realizar las diferentes transacciones y accesos


al
> server, utilizar Store Procedures o armar las consultas y atacar
> directamente a las tablas?
>
> La aplicación es una aplicación cliente-servidor con 6 conexiones
> simultáneas al server como mucho.
> Deciros también que no se hace ningún tipo de ataque a dicho server


atraves
> de Internet ya que los clientes están siempre dentro de la propia LAN de


la
> empresa.
> Actualmente no utilizo ningún tipo de SP sino que armo las consultas y
> ataco directamente a la BBDD .
>
> Os agradecería que me además de inclinaros por una u otra opción me


dierais
> las razones de porque utilizar SP,s o porque consultas en SQL directas


a
> las tablas.
>
> Gracias de antemano.
>
> Saludos
>
> Angel Luis
>
> soport-e
>
>
>
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida