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

Update de una tabla en mysql con Visual Basic.net

Estas en el tema de Update de una tabla en mysql con Visual Basic.net en el foro de .NET en Foros del Web. Saludos, pues estoy de practicas en un municipio y pues estoy puliendo para entrarle a un proyecto y pues em he trabado con el update, ...
  #1 (permalink)  
Antiguo 07/03/2013, 23:55
 
Fecha de Ingreso: marzo-2013
Mensajes: 1
Antigüedad: 11 años, 9 meses
Puntos: 0
Pregunta Update de una tabla en mysql con Visual Basic.net


Saludos, pues estoy de practicas en un municipio y pues estoy puliendo para entrarle a un proyecto y pues em he trabado con el update, pues no puedo actualizar los datos de la tabla por más comando que use. trabajo con procedimiento almacenado.

Procedimiento almacenado:

CREATE DEFINER = 'root'@'localhost' PROCEDURE `usp_update_productos`(
IN Codpro1 CHAR(6),
IN Nombre1 VARCHAR(50),
IN Categoria1 VARCHAR(30),
IN Stock1 INTEGER(8),
IN Precio1 DECIMAL(11,2),
IN Comentario1 VARCHAR(200)
)
NOT DETERMINISTIC
CONTAINS SQL
SQL SECURITY DEFINER
COMMENT ''
BEGIN
update `producto` set Codpro=Codpro1, Nombre=Nombre1, Categoria=Categoria1, Stock=Stock1,
Precio=Precio1, Comentario=Comentario1 where Codpro=Codpro1;
END;

Lo que deseo es actualizar los campos excepto el código, pues creo que debo quitarle el "Codpro=Codpro1", pero bueno ya lo probe y no da resultado.

Este es el código de mi formulario al boton actualizar:

Private Sub btnActualizar_Click(sender As System.Object, e As System.EventArgs) Handles btnActualizar.Click
dat.actualizar_tabla_producto(txtcodpro.Text, txtnompro.Text, txtcategoria.Text, txtstock.Text, txtprecio.Text,
txtcomentario.Text)
Try
Dim Codpro1 As String
Dim Nombrepro1 As String
Dim Categoria1 As String
Dim Stock1 As Integer
Dim Precio1 As Decimal
Dim Comentario1 As String

Codpro1 = txtcodpro.Text
Nombrepro1 = txtnompro.Text
Categoria1 = txtcategoria.Text
Stock1 = txtstock.Text
Precio1 = txtprecio.Text
Comentario1 = txtcomentario.Text
MsgBox("Se ha actualizado correctamente el registro", MsgBoxStyle.Information, "Actualización de Datos")
Catch ex As Exception
MsgBox("Se ha actualizado erróneamente el registro", MsgBoxStyle.Critical, "ERROR Actualización de Datos")
End Try


End Sub

Y este es el código de mi clase

'ACTUALIZAR TABLA PRODUCTO
Public Function actualizar_tabla_producto(Codpro1 As String, Nombrepro1 As String, Categoria1 As String,
Stock1 As Integer, Precio1 As Decimal, Comentario1 As String) As Integer
Try
Dim cmd As New MySqlCommand("usp_update_productos", cn)
cmd.CommandType = CommandType.StoredProcedure
cmd.Parameters.AddWithValue("@Codpro1", Codpro1)
cmd.Parameters.AddWithValue("@Nombrepro1", Nombrepro1)
cmd.Parameters.AddWithValue("@Categoria1", Categoria1)
cmd.Parameters.AddWithValue("@Stock1", Stock1)
cmd.Parameters.AddWithValue("@Precio1", Precio1)
cmd.Parameters.AddWithValue("@Comentario1", Comentario1)

cn.Open()

Dim fls As Integer = cmd.ExecuteNonQuery
Return fls
Catch ex As Exception
Return 0
Finally
cn.Close()
End Try

End Function

Cabe aclarar que no me marca ningun error, pero no logra actualizar al contrario, a los campos que son decimales elimina la coma o punto decimal.

Espero vuestra ayuda.
  #2 (permalink)  
Antiguo 08/03/2013, 18:55
 
Fecha de Ingreso: enero-2013
Mensajes: 8
Antigüedad: 11 años, 11 meses
Puntos: 1
Respuesta: Update de una tabla en mysql con Visual Basic.net

intenta actualizar utilizando un parametro como referencia que solo actualize cuando x variable se igual a alguna de la base de datos a ver si te funciona

Etiquetas: basic.net, mysql, net, studio, update, vb, visual
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 06:32.