código para actualizar
-
Monday, October 26, 2009 3:08 PMHola muy buenos días a todos.Me encuentro una vez más por este foro ya que me dan muy buenas respuestas y me ayudan a resolver mis duda, y en este momento tengo una ;D espero que me puedan ayudar.Lo que pasa es que tengo un codigo para actualizar una base de datos que es el siguientePrivate Sub btnactualiza_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnactualiza.ClickDim Cnx As New SqlConnection("Data Source=123; Initial Catalog=WRAMaterialData; User ID=123; Password=123")Dim SQL As String = "UPDATE Corridas_Nuevos_Modelos SET Prioridad=@Prioridad where Modelo ='" & Me.cmModelos.Text & "'"" status= '1'"""Dim SQL1 As String = "UPDATE Corridas_Nuevos_Modelos SET fecha=@fecha where Modelo ='" & Me.cmModelos.Text & "'"" status= '2'"""Dim SQL2 As String = "UPDATE Corridas_Nuevos_Modelos SET Cantidad=@Cantidad where Modelo ='" & Me.cmModelos.Text & "'"" status= '3'"""' Dim SQL As String = "UPDATE Corridas_Nuevos_Modelos SET fecha=@fecha where Modelo ='" & Me.cmModelos.Text & "'"" status= '4'"""Dim cmdproveedores As New SqlCommand(SQL, Cnx)cmdproveedores.CommandType = CommandType.TextCnx.Open()cmdproveedores.ExecuteNonQuery()Cnx.Close()MsgBox("El número de parte ha sido actualizado", MsgBoxStyle.Information, "Sistema")End Sublo que pasa es que quiero actualizar renglon por renglon pero no se como hacerlo me podrían ayudar diciendome que es lo que tengo mal, el codigo esta mal estructurado, como debe ir, o que es lo que tiene, se los agradecer muchísimo.Gracias desde ya.Saludos
All Replies
-
Monday, October 26, 2009 3:23 PM
Hola!
A ver si te sirve esto:
Dim comando As SqlCommand
comando = Cnx.CreateCommand
comando.CommandText = sql
comando.ExecuteNonQuery()
comando.CommandText = sql1
comando.ExecuteNonQuery()
comando.CommandText = sql2
comando.ExecuteNonQuery()- Marked As Answer by Enrique M. MontejoMVP, Moderator Sunday, June 26, 2011 6:06 PM
-
Monday, October 26, 2009 3:26 PMy ahi donde pongo los parametros y las cajas de texto y asi??
-
Monday, October 26, 2009 3:30 PMModerator
hola
lo que deberias hacer es utilizar los parametros de tu consulta
algo como esto
Private Sub btnactualiza_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnactualiza.Click
Dim Cnx As New SqlConnection("Data Source=123; Initial Catalog=WRAMaterialData; User ID=123; Password=123")
Dim SQL As String = "UPDATE Corridas_Nuevos_Modelos SET Prioridad=@Prioridad, fecha=@fecha where Modelo = @modelo AND status = @status"
Dim cmdproveedores As New SqlCommand(SQL, Cnx)
cmdproveedores.CommandType = CommandType.Text
cmdproveedores.Parameters.AddWithValue("@Prioridad", "<valor>")
cmdproveedores.Parameters.AddWithValue("@fecha", "<fecha>")
cmdproveedores.Parameters.AddWithValue("@modelo", Me.cmModelos.Text )
cmdproveedores.Parameters.AddWithValue("@status", 1)
Cnx.Open()
cmdproveedores.ExecuteNonQuery()
Cnx.Close()
MsgBox("El número de parte ha sido actualizado", MsgBoxStyle.Information, "Sistema")
End Sub
como veras aqui lo hice solo para un query, epro esto mismo deberias hacerlo para cada estado que quieras actualziar.
o sea sera este bloque por cada query, ya que de uno a otro los parametros veo que cambian.
donde puse <> alli deberias reempalzar por el valor qeu toma ese parametro, ayq eu no vi de donde peudes tomarlo
saludos
Leandro Tuttini
Blog
Buenos Aires
Argentina- Proposed As Answer by brujita tapita Saturday, April 23, 2011 9:51 AM
- Marked As Answer by Enrique M. MontejoMVP, Moderator Sunday, June 26, 2011 6:06 PM
-
Monday, October 26, 2009 3:55 PMo sea que...Dim SQL As String = "UPDATE Corridas_Nuevos_Modelos SET Prioridad=@Prioridad, fecha=@fecha where Modelo = @modelo AND status = @status"
Dim cmdproveedores As New SqlCommand(SQL, Cnx)
cmdproveedores.CommandType = CommandType.Text
cmdproveedores.Parameters.AddWithValue("@Prioridad", "<valor>")
cmdproveedores.Parameters.AddWithValue("@fecha", "<fecha>")
cmdproveedores.Parameters.AddWithValue("@modelo", Me.cmModelos.Text )
cmdproveedores.Parameters.AddWithValue("@status", 1)
Cnx.Open()
cmdproveedores.ExecuteNonQuery()
Cnx.Close()todo este bloque de codigo lo tengo que repetir?Si es todo el codigo??

