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

Error al Editar VB.Net

Estas en el tema de Error al Editar VB.Net en el foro de .NET en Foros del Web. Error al Editar VB.Net VB.Net conectado access Me da problema al momento de editar la clave Codigo: ' creando y cargando coneccion y command Dim ...
  #1 (permalink)  
Antiguo 20/08/2008, 23:45
 
Fecha de Ingreso: agosto-2008
Mensajes: 587
Antigüedad: 15 años, 9 meses
Puntos: 6
Error al Editar VB.Net

Error al Editar VB.Net

VB.Net conectado access
Me da problema al momento de editar la clave



Codigo:

' creando y cargando coneccion y command

Dim coneccion As OleDbConnection

Dim orden As OleDbCommand

'abriendo la coneccion o enlace

coneccion = New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & AppDomain.CurrentDomain.BaseDirectory & "\mibase.mdb")

' creando y cargando un objeto OLEDBCOMMAND con

' instruccion sql update


Dim q As String = "update mitabla set nombre = @nombre, edad = @edad where clave =" & txtclave.Text

orden = New OleDbCommand(q, coneccion)

orden.Parameters.Add(New OleDbParameter("@nombre", OleDbType.VarWChar, 20))

orden.Parameters("@nombre").Value = txtnombre.Text

orden.Parameters.Add(New OleDbParameter("@edad", OleDbType.Integer))

orden.Parameters("@edad").Value = txtedad.Text

' mandando sql a base de datos

orden.Connection.Open()

orden.ExecuteNonQuery()

orden.Connection.Close()

' avisando

Label4.Text = "REGISTRO EDITADO "

Este es el error


Codigo Fuente
http://rapidshare.com/files/138917108/Editar.rar

Saludos
  #2 (permalink)  
Antiguo 21/08/2008, 07:33
 
Fecha de Ingreso: octubre-2000
Mensajes: 1.692
Antigüedad: 23 años, 7 meses
Puntos: 19
Respuesta: Error al Editar VB.Net

Hola.

Ese error te lo da porque no es el mismo tipo de datos del parametro con el valor del campo del campo en la base, es posible que un campo que es integer en la base le estes pasando un tipo string. Lo que podes hacer en esos caso es pasarle a todos los parametros valores fijos:

orden.Parameters("@edad").Value = 23

y así, así luego vas poniendo de nuevo de a uno los valores tomando las cajas de texto para que detectes cual es el que te da problema.
Pero casi seguro que el problema es este:

orden.Parameters("@edad").Value = txtedad.Text

Ya que es posible que edad la tengas definido como integer en la base y al pasarle un valor de caja de texto le estas pasando un string, por lo tanto a txtedad.text tendrías que convertirlo a integer.

Para agregar parametros te recomiendo usar en vez de .add usa .AddWithValue, ya que no tenes que especificar ningún el tipo de dato, incluso en la misma linea pasas el nombre del parametro y el dato:

orden.Parameters.AddWithValue("@edad",txtedad.text )

Suerte!!!
__________________
PD: Con amor, fe, amor a Dios y amistad podemos hacer un mundo mejor!!!!
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 12:08.