InicioArticulos y noticiasBases de datosProgramaciónForosInternetServiciosContratacionEmail
SQL
  Tutorial SQL
SQL Server
  Tutorial de Transact-SQL
ORACLE
  Tutorial PL/SQL
.NET
  Introducción a.NET
  Conceptos generales .NET
  Tutorial C#
  LinQ
  WCF
Reina Roja
  Humor
  Bibliografia
  Acerca de ...

Afiliados
La Web del programador
MundoProgramacion

parametros en los procedimientos
tema iniciado porsara en SQL
Mensaje recibido el [20/04/2006 02:15:59]


hola queria saber porque no se especifica longitud en los parametros.
de los procedimientos.
si alguien lo sabe¿?
gracias.

 RE: parametros en los procedimientos por devjoker [20/04/2006 04:34:32]
 RE: parametros en los procedimientos por devjoker [20/04/2006 04:39:54]
 RE: parametros en los procedimientos por aldeamedia [21/04/2006 09:42:20]
 RE: parametros en los procedimientos por devjoker [21/04/2006 09:53:58]
 RE: parametros en los procedimientos por aldeamedia [22/04/2006 10:52:57]

 
RE: parametros en los procedimientos por devjoker
Respuesta recibida el [20/04/2006 04:34:32]

Buena pregunta ...


 
RE: parametros en los procedimientos por devjoker
Respuesta recibida el [20/04/2006 04:39:54]

Pensandolo un poco ...

Cuando le damos tamaño a una variable lo que hacemos es decirle al ordenador cuanta memoria debe reservar para guardar los datos.

En un procedimiento no estamos declarando ninguna variable, solo especificamos el tipo de valor, ya que cuando se ejecute recibirá una variable con su espacio en memoria asigando.

¿Vas ha hacer una tesis doctoral a algo así?

Saludos, DJK


 
RE: parametros en los procedimientos por aldeamedia
Respuesta recibida el [21/04/2006 09:42:20]

No entiendo tu pregunta , cuando especificas un procedimiento almacenado puedes y debes especificar el tamaño el parametros como varchar o int perfectamente.

El no especificar tamaño o no usar un procedimiento almacenado puede provocar errores de seguridad como SQL Injection o buffer Overrun  usando el espacio sobrante en el parametro para ejecutar una sentencia SQL adicional aprovechando el contexto de seguridad del procedimiento almacenado.

Ejemplo:

Create procedure miProc

       @variable varchar(5)

AS 

     Select * fom tabla where campo = ' @variable '

GO

Donde esperamos que alguien nos diga

EXEC miProc "ALFI"

Si no limitamos el tamaño a 5 y pusiesemos por ejemplo varchar de 255 algún malintencionado podría hacer algo como esto

EXEC  miproc "ALFI '  ;   use master ;  delete * from master  --"

Dejo a tu razonamiento entender que procesaría esta sentencia en el motor de la base de datos recordando que  ; significa [ENTER]+GO y -- ignorar el resto de la linea.

 


 
RE: parametros en los procedimientos por devjoker
Respuesta recibida el [21/04/2006 09:53:58]
Creo que se refiere a PL / SQL y no TSQL

 
RE: parametros en los procedimientos por aldeamedia
Respuesta recibida el [22/04/2006 10:52:57]

Por sus preguntas anteriores probablemente, pero asi aprovecho la pregunta por si alguien se pregunta lo mismo relativo a TSQL y entra aquí a partir de Google: SQL +Parametros por ejemplo



 

Email:*
Alias:*
Título:*
Respuesta:*
Notificar:
(Indica si queremos recibir emails)

 
 

devjoker  Te recomendamos además ...
10/07/2006 Subprogramas en bloques anónimos    forma parte de...Tutorial PL/SQL
28/06/2006 Procedimientos almacenados en PL/SQL    forma parte de...Tutorial PL/SQL
10/07/2006 Subprogramas en PL/SQL    forma parte de...Tutorial PL/SQL
19/10/2005 Configurar el IIS para ejecutar aplicaciones ASP.net
27/08/2007 Enviar email con C#
22/10/2005 Vistas    forma parte de...Tutorial SQL
10/07/2006 Funciones en PL/SQL    forma parte de...Tutorial PL/SQL
29/09/2006 Assemblies    forma parte de...Conceptos generales .NET
01/01/2005 Bases de datos.    forma parte de...Iniciación a las bases de datos
22/10/2005 Componentes del lenguaje SQL    forma parte de...Tutorial SQL

Encuesta
Si trabajas con .NET ¿Que entorno utilizas?
[Ver] [Votar]