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

No me responde el parametro de salida de mi sp

Estas en el tema de No me responde el parametro de salida de mi sp en el foro de SQL Server en Foros del Web. Hola!!! les comento cual es mi problema. tengo un sp con dos parametros de entrada @nombre varchar (50) y @apellido varchar (59) y un parametro ...
  #1 (permalink)  
Antiguo 10/09/2008, 13:39
 
Fecha de Ingreso: julio-2008
Mensajes: 9
Antigüedad: 15 años, 9 meses
Puntos: 0
No me responde el parametro de salida de mi sp

Hola!!!
les comento cual es mi problema. tengo un sp con dos parametros de entrada @nombre varchar (50) y @apellido varchar (59) y un parametro de salida @estado varchar (5). aqui se los pego.

CREATE procedure HacerConsultaTitulo

@nombre varchar (50), @apellido varchar (50), @est varchar (5) output
as
select @est = Estado from ClienteTpTitulo where Nombre =@nombre and Apellido =@apellido
RETURN
lo unico que quiero es que me devuelva el estado de este usuario. y lo llamo desde una aplicacion ASP.net de esta forma.

Dim con As New SqlConnection("data source=darionote; initial catalog=Northwind; integrated security=true")

Dim MiSqlcommand As SqlCommand = New SqlCommand("HacerConsultaTitulo", con)
MiSqlcommand.CommandType = CommandType.StoredProcedure

Dim Miparametro1 As SqlParameter
Miparametro1 = New SqlParameter("@nombre", SqlDbType.VarChar)
Miparametro1.Direction = ParameterDirection.Input
Miparametro1.Value = TextBox1.Text.ToString
MiSqlcommand.Parameters.Add(Miparametro1)

Dim Miparametro2 As SqlParameter
Miparametro2 = New SqlParameter("@valor", SqlDbType.VarChar)
Miparametro2.Direction = ParameterDirection.Input
Miparametro2.Value = TextBox2.Text.ToString
MiSqlcommand.Parameters.Add(Miparametro2)

Dim Miparametro3 As SqlParameter
Miparametro3 = New SqlParameter("@est", SqlDbType.VarChar)
Miparametro3.Direction = ParameterDirection.Output
MiSqlcommand.Parameters.Add(Miparametro3)

con.Open()
'Ejecutar el Store Procedure
MiSqlcommand.ExecuteNonQuery()
con.Close()

Label1.Text = MiSqlcommand.Parameters("@est").Value

y cuando lo corro desde el asp me da este error.

El parámetro 2: '@est' de tipo: String, la propiedad Size tiene un tamaño incorrecto: 0


y me marca con rojo esta linea:

Línea 68: 'Ejecutar el Store Procedure
Línea 79: MiSqlcommand.ExecuteNonQuery() <<<<<----<<<<<---
Línea 70: con.Close()
Línea 71:

sime podrian dar una mano, por que busque en google, y los distintos foros, y esta bien creo yo lo que estoy haciendo.
  #2 (permalink)  
Antiguo 10/09/2008, 14:59
 
Fecha de Ingreso: noviembre-2006
Ubicación: México
Mensajes: 866
Antigüedad: 17 años, 6 meses
Puntos: 8
Respuesta: No me responde el parametro de salida de mi sp

Los objeto parametro tiene una propiedad Size, ponla en 5. Según el error, que es lo que esta marcando. (El parámetro 2: '@est' de tipo: String, la propiedad Size tiene un tamaño incorrecto: 0 )
  #3 (permalink)  
Antiguo 10/09/2008, 16:37
Avatar de Andres95
Colaborador
 
Fecha de Ingreso: diciembre-2004
Mensajes: 1.802
Antigüedad: 19 años, 4 meses
Puntos: 38
Respuesta: No me responde el parametro de salida de mi sp

aunque esta es una pregunta del foro de .NET...

Saludos!
__________________
La sencillez y naturalidad son el supremo y último fin de la cultura...
--
MCTS : SQL Server 2008, .NET Framework 3.5, ASP.NET Applications.
  #4 (permalink)  
Antiguo 10/09/2008, 16:46
 
Fecha de Ingreso: julio-2008
Mensajes: 9
Antigüedad: 15 años, 9 meses
Puntos: 0
Respuesta: No me responde el parametro de salida de mi sp

Cita:
Iniciado por daniel00 Ver Mensaje
Los objeto parametro tiene una propiedad Size, ponla en 5. Según el error, que es lo que esta marcando. (El parámetro 2: '@est' de tipo: String, la propiedad Size tiene un tamaño incorrecto: 0 )

desde ya muchas gracias, perdon que pregunte tanto, lo que pasa que estoy aprediendo a programar...y no tenia en mis apuntes info sobre la propiedad size, y siempre que trabaje con store procedure nunca configure la propiedad size....
pero bueno, siempre se aprende algo nuevo....

la solucion fue agregar una linea que la dejo colocada aca y marcada.

Dim Miparametro3 As SqlParameter
Miparametro3 = New SqlParameter("@est", SqlDbType.VarChar)
Miparametro3.Direction = ParameterDirection.Output
Miparametro3.Size = 5 <<<<<<-----------------------------
MiSqlcommand.Parameters.Add(Miparametro3)


desde ya muchas gracias.
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 07:49.