Por que usar Parametro y no SQL tradicional

28/03/2005 - 21:16 por Don Quijote de Nicaragua | Informe spam
Hola chicos, he visto que en la mayoria de los ejemplos ahora usan
parametros para introducir informacion en la base de datos, por que usar
Parametros en ves de nuestro SQL tradicional de inserción.
Gracias.
Don Quijote de Nicaragua

Preguntas similare

Leer las respuestas

#1 DJ MIAO
29/03/2005 - 05:22 | Informe spam
Habla claro .
Que es tu SQL tradicional?



Miao...
Comprate un libro.

Mostrar la cita
ahora usan
Mostrar la cita
datos, por que usar
Mostrar la cita
inserción.
Mostrar la cita
#2 Eduardo A. Morcillo [MS MVP VB]
29/03/2005 - 05:56 | Informe spam
Concatenar la data ingresada por el usuario en la sentencia SQL tiene dos
inconvenientes.

El primero es con el formato de la data. Por ejemplo si quieres insertar en
un campo texto que contiene un ' dara error o deberas duplicar los ' para
que SQL no lo entienda como final del texto. Tambien puedes tener problemas
de formato con las fechas si las concatenas. Esto no sucede si se usan
parametros.

Lo segundo y mas importante es por seguridad. Un usuario malintencionado
puede ingresar sentencias SQL dentro de tu sentencia lo cual puede ser muy
peligroso en combinacion con una cuenta de usuario con demasiados permisos.
Un ejemplo, supongamos que tienes esta sentencia:

SQL = "SELECT * FROM Tabla WHERE Campo = '" & buscar.Text & "'"

Un usuario malintencionado puede ingresar en el campo buscar algo asi:

'; DROP TABLE Tabla --

Lo que ocasiona estas sentencias como resultado de la concatenacion:

SELECT * FROM Tabla WHERE Campo = ''; DROP TABLE Tabla --'

Resultando en la eliminacion de la tabla. De esta misma forma se podria
hacer cualquier cosa como por ejemplo, si es contra SQL Server, ejecutar el
procedimiento almacenado xp_cmdshell y formatear el disco rigido. Usando
parametros te evitas esto ya que el texto del parametro no se concatena con
el comando sql sino que es tomado como texto.

Eduardo A. Morcillo [MS MVP VB]
http://www.mvps.org/emorcillo
https://mvp.support.microsoft.com/p...4EF5A4191C
#3 DJ MIAO
29/03/2005 - 06:33 | Informe spam
A cuantas conferencias asistes de Microsoft porque ya
tienen el disco rallado con SQLInjectionSecurity es lo
unico que saben decir.


Miao...
Comprate un libro.

Mostrar la cita
sentencia SQL tiene dos
Mostrar la cita
quieres insertar en
Mostrar la cita
duplicar los ' para
Mostrar la cita
puedes tener problemas
Mostrar la cita
sucede si se usan
Mostrar la cita
malintencionado
Mostrar la cita
cual puede ser muy
Mostrar la cita
demasiados permisos.
Mostrar la cita
buscar.Text & "'"
Mostrar la cita
buscar algo asi:
Mostrar la cita
concatenacion:
Mostrar la cita
'
Mostrar la cita
forma se podria
Mostrar la cita
Server, ejecutar el
Mostrar la cita
disco rigido. Usando
Mostrar la cita
no se concatena con
Mostrar la cita
4197-A380-104EF5A4191C
Mostrar la cita
#4 Don Quijote de Nicaragua
30/03/2005 - 07:23 | Informe spam
Muchas gracias por tu explicación Eduardo, lo de formatiar el disco duro me
dejo muy preocupado, jejeje.
Saludos desde Nicaragua.
Don Quijote de Nicaragua.

"Eduardo A. Morcillo [MS MVP VB]" <emorcillo .AT. mvps.org> escribió en el
mensaje news:
Mostrar la cita
en
Mostrar la cita
problemas
Mostrar la cita
permisos.
Mostrar la cita
el
Mostrar la cita
con
Mostrar la cita
https://mvp.support.microsoft.com/p...4EF5A4191C
Mostrar la cita
Ads by Google
Search Busqueda sugerida