Maquina tragaperras. Problemas con Update
Publicado por jonatan (9 intervenciones) el 20/06/2019 11:23:53
Buenos días
Lo primero agradecer cualquier ayuda ya que estoy un poco atrancado y no se por donde tirar.
Mi proyecto es una maquina tragaperras vinculada a una base de datos access que guarda información en tres tablas.
Cuando abrimos la aplicación, se guarda informacion en la tabla PARTIDAS la hora actual y el CreditoIni (credito inicial, por defecto 10), Hasta aquí todo bien. Dejo código para que lo veáis
.
Cuando pasamos al interfaz de la maquina hay dos botones: iniciar y parar.
Al pulsar el botón INICIAR ,gastamos un crédito y podemos repetir este proceso hasta quedarnos sin créditos.
Con el botón de PARAR, se hace la repartición de premios en el caso de ser un afortunado y también guardamos datos en varias tablas. Hasta aquí todo correcto.
El PROBLEMA me viene dado cuando intento actualizar la tabla PARTIDAS . Mi idea es que cuando el usuario se canse y cierre la aplicación me actualice la tabla con el saldo que tiene disponible.
Lo he intentado de varias formas y siempre con el mismo error 'No coinciden los tipos de datos en la expresión de criterios.'. He leído sobre este error pero he verificado los datos que estoy intentado insertar o actualizar y están correctos.
Aquí podéis ver la consulta que utilizo
Cualquier duda intentare aclararla lo mejor posible.
Gracias
Lo primero agradecer cualquier ayuda ya que estoy un poco atrancado y no se por donde tirar.
Mi proyecto es una maquina tragaperras vinculada a una base de datos access que guarda información en tres tablas.
Cuando abrimos la aplicación, se guarda informacion en la tabla PARTIDAS la hora actual y el CreditoIni (credito inicial, por defecto 10), Hasta aquí todo bien. Dejo código para que lo veáis
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Private Sub Maquina_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Try
'abrimos la conexion
Enlace()
'creamos la consulta
Dim consulta3 As String = "INSERT INTO Partidas (Hora, CreditoIni ) values ('" & HoraInicio & "'," & Saldo & ")"
comando = New OleDb.OleDbCommand(consulta3, conexion)
comando.ExecuteNonQuery()
Catch ex As Exception
MessageBox.Show(ex.Message)
Finally
'cerramos conexion
conexion.Close()
End Try
End Sub
Cuando pasamos al interfaz de la maquina hay dos botones: iniciar y parar.
Al pulsar el botón INICIAR ,gastamos un crédito y podemos repetir este proceso hasta quedarnos sin créditos.
Con el botón de PARAR, se hace la repartición de premios en el caso de ser un afortunado y también guardamos datos en varias tablas. Hasta aquí todo correcto.
El PROBLEMA me viene dado cuando intento actualizar la tabla PARTIDAS . Mi idea es que cuando el usuario se canse y cierre la aplicación me actualice la tabla con el saldo que tiene disponible.
Lo he intentado de varias formas y siempre con el mismo error 'No coinciden los tipos de datos en la expresión de criterios.'. He leído sobre este error pero he verificado los datos que estoy intentado insertar o actualizar y están correctos.
Aquí podéis ver la consulta que utilizo
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
Private Sub Maquina_FormClosing(sender As Object, e As FormClosingEventArgs) Handles Me.FormClosing
Dim dr As DialogResult = MessageBox.Show("¿Seguro que desea dejar de jugar?", "Confirme", MessageBoxButtons.YesNo, MessageBoxIcon.Question)
If (dr = DialogResult.No) Then
' Cancelamos el cierre del formulario.
e.Cancel = True
Else
Me.Dispose()
'Actualizamos datos en la tabla PARTIDAS
Enlace()
'creamos la consulta
Dim consulta4 As String = "UPDATE Partidas SET CreditoFin = " & Saldo & " WHERE Hora = '" & HoraInicio & "'"
' insertamos la consulta en el oldbComand
comando = New OleDb.OleDbCommand(consulta4, conexion)
' ejecutamos consulta
comando.ExecuteNonQuery()
End If
End Sub
Cualquier duda intentare aclararla lo mejor posible.
Gracias
Valora esta pregunta


0