
Error de update con MySql utilizando DateTimePicker
Publicado por Brett (2 intervenciones) el 16/10/2015 01:40:11
¡Buenas!
Bueno, es mi primer tema (?)
Estoy con mi proyecto de fin de curso, y bueno, debo hacer un bello UPDATE con Wamp Server, utilizando MySQL. El código, es el siguiente:
Formulario:
Función en módulo:
Y, bueno, también lo he intentado con el siguiente formato (cambiando parámetros y demás):
Bueno, el primer error que me sale, es el siguiente "Unable to convert MySQL date/time value to System.DateTime", con el cual ni siquiera puedo correr el programa; he leído por allí que, cuando se hace la conexión, hay que darle allow y/o convert datetime zero a true, pero aún así me siguen dando errores, de excepción de inicialización, error de formato de variables (que sí, he intentado cambiarlas, varias veces, pero no he tenido buenos resultados); eso sí, hay veces que puedo ingresar los datos cuando uso una de esas opciones, pero me ingresa "0000/00/00" en la base de datos.
¿Alguna ayuda?
Bueno, es mi primer tema (?)
Estoy con mi proyecto de fin de curso, y bueno, debo hacer un bello UPDATE con Wamp Server, utilizando MySQL. El código, es el siguiente:
Formulario:
1
2
3
4
5
6
7
8
9
10
11
Public Class Form5
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
'Asignación de valores a variables Public
id_paciente = Val(TextBox1.Text)
fecha_proxima_visita = DateTimePicker1.Value.ToShortDateString()
ingreso_fecha_proxima_visita(fecha_proxima_visita, id_paciente)
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Me.Close()
End Sub
End Class
Función en módulo:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Imports MySql.Data.MySqlClient
Public fecha_proxima_visita As Date
Public id_paciente As Integer
................
................
................
Function ingreso_fecha_proxima_visita(ByVal fecha_proxima_visita As Date, ByVal id_paciente As Integer)
consulta = "update pacientes set fechaproxv='" & fecha_proxima_visita & "' where idpaciente='" & id_paciente & "'"
adaptador = New MySqlDataAdapter(consulta, conexion)
tabla = New DataTable
adaptador.Fill(tabla)
Return MsgBox(fecha_proxima_visita)
End Function
End Module
Y, bueno, también lo he intentado con el siguiente formato (cambiando parámetros y demás):
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
Function ingreso_nuevo_trabajo(ByVal id_paciente As Integer, ByVal presupuesto As Double, ByVal detalle As String, ByVal fecha_vencimiento_pago As Date)
If id_paciente <> 0 And detalle <> "" And presupuesto > 0 And fecha_vencimiento_pago >= hoy Then
Try
adaptador.InsertCommand = New MySqlCommand("Insert into trabajos (idpaciente, presupuesto, detalle, fechavencpag) values (@id_paciente,@presupuesto,@detalle,@fecha_vencimiento_pago)", conexion)
adaptador.InsertCommand.Parameters.Add("@id_paciente", MySqlDbType.Int32).Value = id_paciente
adaptador.InsertCommand.Parameters.Add("@presupuesto", MySqlDbType.Int64).Value = presupuesto
adaptador.InsertCommand.Parameters.Add("@detalle", MySqlDbType.VarChar, 500).Value = detalle
adaptador.InsertCommand.Parameters.Add("@fecha_vencimiento_pago", MySqlDbType.Date).Value = fecha_vencimiento_pago
conexion.Open()
adaptador.InsertCommand.Connection = conexion
adaptador.InsertCommand.ExecuteNonQuery()
conexion.Close()
Catch ex As Exception
MsgBox(ex.Message + Chr(10) + "Error en ingreso de datos." + Chr(10) + "Vuelva a intentarlo")
error_ingreso = 0
End Try
If error_ingreso = 1 Then
Return (MsgBox("Trabajo ingresado correctamente."))
End If
Else
Return (MsgBox("Hay campos sin completar o la fecha ingresada es menor a hoy." + Chr(10) + "Vuelva a intentarlo."))
End If
End Function
Bueno, el primer error que me sale, es el siguiente "Unable to convert MySQL date/time value to System.DateTime", con el cual ni siquiera puedo correr el programa; he leído por allí que, cuando se hace la conexión, hay que darle allow y/o convert datetime zero a true, pero aún así me siguen dando errores, de excepción de inicialización, error de formato de variables (que sí, he intentado cambiarlas, varias veces, pero no he tenido buenos resultados); eso sí, hay veces que puedo ingresar los datos cuando uso una de esas opciones, pero me ingresa "0000/00/00" en la base de datos.
¿Alguna ayuda?
Valora esta pregunta


0