ke tal
No sé cómo poder hacerlo para recibir los datos en una DLL que estoy haciendo con VB 6.0.
El problema específico es que al querer guardar los datos, se chequee si existe el registro en la BD y lo actualice, o si no, que agrege uno nuevo.
En mi código tengo algo así:
VB:
-------------------------------
Option Explicit
Dim oConn As ADODB.Connection ' Creamos un objeto Conexión
Dim rs As ADODB.Recordset ' Creamos un objeto recordset
Dim sSQL As String
----------------------------------
Private Sub conex()
On Error GoTo ErrorCon
Set oConn = New Connection
oConn.Open "DSN=dbacc;UID=;PWD=;"
Exit Sub
ErrorCon:
oConn.Close
Set oConn = Nothing
Err.Raise Err.Number, Err.Source, "Error al recuperar datos. " & vbCrLf & Err.Description
Exit Sub
End Sub
-------------------------------------
Public Function guardar(tabla, valores, condicion)
Call Conex
'Valores(i) de
valor1="columnaBD1=" & valores(0)
valor2="columnaBD2=" & valores(1) ....
sSQL0="SELECT idTabla FROM " & tabla & " WHERE " & condicion & "
sSQL1="INSERT INTO " & tabla & " VALUES " & valores
sSQL2="UPDATE " & valor1 & "," & valor2 & "," ... FROM " & tabla & " WHERE " & condicion
Set rs = New Recordset
rs.Open sSQL, oConn, 0, 1
If rs.BOF And rs.Eof Then 'si no existe el registro, inserta uno nuevo
Set rs1 = New Recordset
rs1.Open sSQL1, oConn, 0, 1
Else 'si existe el registro, lo actualiza
Set rs2 = New Recordset
rs2.Open sSQL2, oConn, 0, 1
End If
Set rs = Nothing
Set oConn = Nothing
End Function
------------------------------------
fin
Mi duda es la siguiente, los valores que recojo en un formulario los paso como parametros a la DLL
como "valor1,valor2, valor3, ... etc", el cual me sirve perfecto para utilizarlo en la consulta INSERT de SQL,
pero para la consulta UPDATE debe ser "columna1=valor1,columna2=valor2,...etc", ni problema es simple
pero estoy enredado, a cerca de cómo lograr una cadena de caracteres del tipo "columna=valor" a partir de
los valores recibo.
Muchas gracias a quien se digne ayudar a este principiante