Foros del Web » Programación para mayores de 30 ;) » .NET »

falla store procedure

Estas en el tema de falla store procedure en el foro de .NET en Foros del Web. He creado un store procedure para intorudicr un registro en la base de datos,pero no inserta ningun valor.Es el primero que creo(he cogido otro de ...
  #1 (permalink)  
Antiguo 15/12/2008, 06:33
 
Fecha de Ingreso: noviembre-2008
Mensajes: 41
Antigüedad: 15 años, 5 meses
Puntos: 0
falla store procedure

He creado un store procedure para intorudicr un registro en la base de datos,pero no inserta ningun valor.Es el primero que creo(he cogido otro de ejemplo como base) y no entiendo que falla
El codigo es el siguiente
ALTER PROCEDURE spInsertarContactoweb
(
@motivo char(200),
@nombre char(40),
@apellidos char(60),
@cif char(10),
@email char(60),
@cargo char(60),
@empresa char(60),
@direccion char(70),
@poblacion char(40),
@cp char(8),
@provincia char(30),
@telefono char(30),
@info bit,
@ocupacion char(10)
)
AS
/* SET NOCOUNT ON */
BEGIN
insert into Contactos_web(motivo,nombre,apellidos,cif,email,ca rgo,empresa,direccion,poblacion,codigopostal,provi ncia,telefono,fecha,info,ocupacion) values(@motivo, @nombre, @apellidos, @cif, @email,@cargo,@empresa,@direccion,@poblacion,@cp,@ provincia,@telefono,GETDATE(),@info,@ocupacion)
END
RETURN

Última edición por mkgreidi; 15/12/2008 a las 08:15
  #2 (permalink)  
Antiguo 15/12/2008, 07:27
Avatar de Piruleta  
Fecha de Ingreso: enero-2008
Ubicación: En Madrid
Mensajes: 36
Antigüedad: 16 años, 3 meses
Puntos: 0
Respuesta: falla store procedure

El espacio que hay en ca rgo es un fallo al copiar la pregunta... o es que se te ha pasado???
  #3 (permalink)  
Antiguo 15/12/2008, 07:28
Avatar de Piruleta  
Fecha de Ingreso: enero-2008
Ubicación: En Madrid
Mensajes: 36
Antigüedad: 16 años, 3 meses
Puntos: 0
Respuesta: falla store procedure

¿¿¿y el de provi ncia??? ¿Qué error te sale???
  #4 (permalink)  
Antiguo 15/12/2008, 08:19
 
Fecha de Ingreso: noviembre-2008
Mensajes: 41
Antigüedad: 15 años, 5 meses
Puntos: 0
Respuesta: falla store procedure

Si,los fallos han sido al copiar,esos espacios no estan en el codigo(lo he comprobado por si acaso...)
No me da ningun error,pero no inserta nada en la base de datos
He comprobado que al asignar el valor a las variables se le asigne bien y si,eso lo hace correcto
Lo copio tambien por si el fallo estuviera aqui

mycommand = New SqlCommand("spInsertarContactoweb", conexion)
mycommand.CommandType = CommandType.StoredProcedure

mycommand.Parameters.Add(New SqlParameter("@motivo", SqlDbType.Char))
mycommand.Parameters.Add(New SqlParameter("@nombre", SqlDbType.Char))
mycommand.Parameters.Add(New SqlParameter("@apellidos", SqlDbType.Char))
mycommand.Parameters.Add(New SqlParameter("@cif", SqlDbType.Char))
mycommand.Parameters.Add(New SqlParameter("@email", SqlDbType.Char))
mycommand.Parameters.Add(New SqlParameter("@cargo", SqlDbType.Char))
mycommand.Parameters.Add(New SqlParameter("@empresa", SqlDbType.Char))
mycommand.Parameters.Add(New SqlParameter("@direccion", SqlDbType.Char))
mycommand.Parameters.Add(New SqlParameter("@poblacion", SqlDbType.Char))
mycommand.Parameters.Add(New SqlParameter("@cp", SqlDbType.Char))
mycommand.Parameters.Add(New SqlParameter("@provincia", SqlDbType.Char))
mycommand.Parameters.Add(New SqlParameter("@pais", SqlDbType.Char))
mycommand.Parameters.Add(New SqlParameter("@telefono", SqlDbType.Char))
mycommand.Parameters.Add(New SqlParameter("@info", SqlDbType.Bit))
mycommand.Parameters.Add(New SqlParameter("@ocupacion", SqlDbType.Char))

mycommand.Parameters("@motivo").Value = motivo
mycommand.Parameters("@nombre").Value = nombre
mycommand.Parameters("@apellidos").Value = apellidos
mycommand.Parameters("@cif").Value = cif
mycommand.Parameters("@email").Value = email
mycommand.Parameters("@cargo").Value = cargo
mycommand.Parameters("@empresa").Value = nombreemp
mycommand.Parameters("@direccion").Value = direccion
mycommand.Parameters("@poblacion").Value = poblacion
mycommand.Parameters("@cp").Value = cp
mycommand.Parameters("@provincia").Value = provincia
mycommand.Parameters("@pais").Value = pais
mycommand.Parameters("@telefono").Value = telefono
mycommand.Parameters("@info").Value = pub
mycommand.Parameters("@ocupacion").Value = actividad
  #5 (permalink)  
Antiguo 15/12/2008, 08:57
 
Fecha de Ingreso: noviembre-2008
Mensajes: 41
Antigüedad: 15 años, 5 meses
Puntos: 0
Respuesta: falla store procedure

Me olvidé una parte importante.Le añadi esto:
Try
mycommand.Connection.Open()
mycommand.ExecuteNonQuery()
Catch Exp As SqlException
lbl_mensaje.Text = Exp.Message
End Try

Y ahora el error que me devuelve es
System.FormatException: No se puede reconocer la cadena como un tipo booleano válido.
En esta linea
mycommand.ExecuteNonQuery()
  #6 (permalink)  
Antiguo 15/12/2008, 09:01
Avatar de masterojitos  
Fecha de Ingreso: julio-2008
Ubicación: Lima Callao Chucuito
Mensajes: 1.931
Antigüedad: 15 años, 9 meses
Puntos: 105
Respuesta: falla store procedure

y por que no pruebas asi:
mycommand.Parameters.Add("@motivo",SqlDbType.Char, 4).value=motivo;

y dime estas con visual basic o C#???

suerte.
__________________
Atte. MasterOjitos :ojotes:
Todo sobre Programación Web
Las ultimas tendencias en Efectos y Recursos Web: MasterOjitos Blog
  #7 (permalink)  
Antiguo 15/12/2008, 09:31
 
Fecha de Ingreso: noviembre-2008
Mensajes: 41
Antigüedad: 15 años, 5 meses
Puntos: 0
Respuesta: falla store procedure

He probado como me dijiste y me sigue dando el mismo error de antes.Estoy con visual basic
Como lo he ido poniendo de aquella manera y es dificil de seguir pongo de nuevo todo el codigo aqui mas claro

Dim con_string As String = ws.OConnectionString()
Dim conexion As New SqlConnection(con_string)
Dim mycommand As SqlCommand

mycommand = New SqlCommand("spInsertarContactoweb", conexion)
mycommand.CommandType = CommandType.StoredProcedure

mycommand.Parameters.Add("@motivo", SqlDbType.Char, 200).Value = motivo
mycommand.Parameters.Add("@nombre", SqlDbType.Char, 40).Value = nombre
mycommand.Parameters.Add("@apellidos", SqlDbType.Char, 60).Value = apellidos
mycommand.Parameters.Add("@cif", SqlDbType.Char, 10).Value = cif
mycommand.Parameters.Add("@email", SqlDbType.Char, 60).Value = email
mycommand.Parameters.Add("@cargo", SqlDbType.Char, 60).Value = cargo
mycommand.Parameters.Add("@empresa", SqlDbType.Char, 60).Value = nombreemp
mycommand.Parameters.Add("@direccion", SqlDbType.Char, 70).Value = direccion
mycommand.Parameters.Add("@poblacion", SqlDbType.Char, 40).Value = poblacion
mycommand.Parameters.Add("@cp", SqlDbType.Char, 8).Value = cp
mycommand.Parameters.Add("@provincia", SqlDbType.Char, 30).Value = provincia
mycommand.Parameters.Add("@pais", SqlDbType.Char, 30).Value = pais
mycommand.Parameters.Add("@telefono", SqlDbType.Char, 30).Value = telefono
mycommand.Parameters.Add("@info", SqlDbType.Bit, 1).Value = pub
mycommand.Parameters.Add("@ocupacion", SqlDbType.Char, 10).Value = actividad
Try
mycommand.Connection.Open()
mycommand.ExecuteNonQuery()
Catch Exp As SqlException
lbl_mensaje.Text = Exp.Message
End Try

ALTER PROCEDURE spInsertarContactoweb
(
@motivo char(200),
@nombre char(40),
@apellidos char(60),
@cif char(10),
@email char(60),
@cargo char(60),
@empresa char(60),
@direccion char(70),
@poblacion char(40),
@cp char(8),
@provincia char(30),
@telefono char(30),
@info bit,
@ocupacion char(10)
)
AS
/* SET NOCOUNT ON */
Begin
insert into Contactos_web(motivo,nombre,apellidos,cif,email,ca rgo,empresa,direccion,poblacion,codigopostal,provi ncia,telefono,fecha,info,ocupacion) values(@motivo, @nombre, @apellidos, @cif, @email,@cargo,@empresa,@direccion,@poblacion,@cp,@ provincia,@telefono,GETDATE(),@info,@ocupacion)
End
RETURN

Y el error es el siguiente

System.FormatException: No se puede reconocer la cadena como un tipo booleano válido.
Línea 93: mycommand.ExecuteNonQuery()
  #8 (permalink)  
Antiguo 15/12/2008, 10:15
 
Fecha de Ingreso: noviembre-2008
Mensajes: 41
Antigüedad: 15 años, 5 meses
Puntos: 0
Respuesta: falla store procedure

Ya descubri donde esta el problema!Pero no se solucionarlo...
El fallo es el campo info,que es un checkbox en el formulario.Como tengo que hacerlo para insertar en la base de datos un valor que es un checkbox?
  #9 (permalink)  
Antiguo 15/12/2008, 10:21
Avatar de masterojitos  
Fecha de Ingreso: julio-2008
Ubicación: Lima Callao Chucuito
Mensajes: 1.931
Antigüedad: 15 años, 9 meses
Puntos: 105
Respuesta: falla store procedure

el checkbox tiene un valor verdad???

ps preguntas que si el valor del checkbox es el que quieres, y de serlo, insertas el valor.
__________________
Atte. MasterOjitos :ojotes:
Todo sobre Programación Web
Las ultimas tendencias en Efectos y Recursos Web: MasterOjitos Blog
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 05:09.