Agregar y consultar registros
TEngo una aplicación en vb donde tengo que dar de alta productos a una BD en mysql pero antes de dar de alta un registro tengo que hacer una consulta para saber si el código del producto ya existe o no y que me mande un mensaje en caso de que ya exista el código que me diga que ya exista y no haga nada y si no existe aun que lo de de alta en la BD.
Esto lo quiero hacer al dar click en un botón pero tengo errores al hacer la consulta y después agregar los registros porque lo hago de manera simultanea.
Mi código es este:
Dentro del evento click del botón
Dim consulta As New rdoQuery
Dim db As New rdoConnection
Dim cadena_conexion
On Error GoTo fallas
cadena_conexion = "DRIVER={MySQL ODBC 3.51 Driver}; SERVER=localhost; DATABASE=pdv; PWD=pdv; UID=pdv; OPTION=3"
Set db = New rdoConnection
db.Connect = cadena_conexion
db.CursorDriver = rdUseServer
db.EstablishConnection
Set consulta.ActiveConnection = db
consulta.SQL = "select * from articulo where `a_amecop`='" & Trim(act) & "'"
consulta.Execute
'asigno el resultado de la consulta al objeto resultados (rdoResultset)
Set resultados = consulta.OpenResultset
Text9.Text = resultados("a_amecop")
If Text9.Text = "" Then
var = 1
Else
var = 2
End If
If var = 1 Then
consulta.SQL = "INSERT INTO articulo VALUES ('" & uno & "','" & dos & "','" & tres & "','" & Text1.Text & "','" & cinco & "','" & cuatro & "','" & Text1.Text & "','" & Text1.Text & "','" & Text1.Text & "','" & Text1.Text & "','" & Text1.Text & "','" & Text1.Text & "','" & seis & "','" & Text1.Text & "','" & siete & "','" & ocho & "','" & Text1.Text & "','" & nueve & "','" & dies & "','" & Text1.Text & "','" & once & "','" & doce & "','" & Text1.Text & "' )"
consulta.Execute
Else
MsgBox "EL Producto ya existe", , "Consulta"
End If
msg box"registros agregados"
Resultados.Close
Set resultados = Nothing
db.Close
Fallas:
If Err = 40002 Then
MsgBox "No se pudo establecer la conexion"
End If
Esto lo quiero hacer al dar click en un botón pero tengo errores al hacer la consulta y después agregar los registros porque lo hago de manera simultanea.
Mi código es este:
Dentro del evento click del botón
Dim consulta As New rdoQuery
Dim db As New rdoConnection
Dim cadena_conexion
On Error GoTo fallas
cadena_conexion = "DRIVER={MySQL ODBC 3.51 Driver}; SERVER=localhost; DATABASE=pdv; PWD=pdv; UID=pdv; OPTION=3"
Set db = New rdoConnection
db.Connect = cadena_conexion
db.CursorDriver = rdUseServer
db.EstablishConnection
Set consulta.ActiveConnection = db
consulta.SQL = "select * from articulo where `a_amecop`='" & Trim(act) & "'"
consulta.Execute
'asigno el resultado de la consulta al objeto resultados (rdoResultset)
Set resultados = consulta.OpenResultset
Text9.Text = resultados("a_amecop")
If Text9.Text = "" Then
var = 1
Else
var = 2
End If
If var = 1 Then
consulta.SQL = "INSERT INTO articulo VALUES ('" & uno & "','" & dos & "','" & tres & "','" & Text1.Text & "','" & cinco & "','" & cuatro & "','" & Text1.Text & "','" & Text1.Text & "','" & Text1.Text & "','" & Text1.Text & "','" & Text1.Text & "','" & Text1.Text & "','" & seis & "','" & Text1.Text & "','" & siete & "','" & ocho & "','" & Text1.Text & "','" & nueve & "','" & dies & "','" & Text1.Text & "','" & once & "','" & doce & "','" & Text1.Text & "' )"
consulta.Execute
Else
MsgBox "EL Producto ya existe", , "Consulta"
End If
msg box"registros agregados"
Resultados.Close
Set resultados = Nothing
db.Close
Fallas:
If Err = 40002 Then
MsgBox "No se pudo establecer la conexion"
End If
Respuesta de franko1809
1