Pregunta: | 52439 - CONSULTA SQL DESDE VISUAL BASIC PARA TABLA EN VISUAL FOXPRO |
Autor: | Oscar William Valderrama Díaz |
Hola, tengo un problema al realizar una consulta SQL desde Visual Basic para actualizar una tabla en Visual FoxPro, ya he realizado la conexión hacia la tabla de fox. Yo solo quiero actualizar el campo 'DOCUMENTO' de la tabla VentaDia donde 'ID_CONTADO' sea igual a, p. eje, 4, así: "update VentaDia set DOCUMENTO = 3010000004 where ID_CONTADO = 4".
He hecho casi de todo por resolver el problema, y el error que sale es parecido a esto: "La operación es incorrecta porque necesita de una consulta actualizable (updateble query)" más o menos. Espero contar con ustedes para poder avanzar con mi trabajo. Muy agradecido de antemano. |
Respuesta: | Marvin Zepeda |
Buenas tardes a todos, yo hago eso que tu expones pero desde la version 6 del visual basic y me fucniona muy bien. A continuacion te detallo el entorno en el que se ejecuta el SQL:
1- En un modulo tengo el siguiente codigo 'variable de conexion Public Conexion As ADODB.Connection 'recordsets Public RST As ADODB.Recordset 'recordset general 'cadena SQL Public SQL As String 'Yo trabajo con tablas y utilizo esta conexion Public Sub Abrir_Conexion() Set Conexion = New ADODB.Connection Conexion.ConnectionString = "DSN=Visual FoxPro Tables;UID=;SourceDB=<aqui las rutas ej: c: ablas>SourceType=DBF;Exclusive=No;BackgroundFetch=Sí;Collate=Machine;" Conexion.ConnectionTimeout = 0 Conexion.CommandTimeout = 0 Conexion.Open End Sub 2- en el programa lo uso de la siguiente manera 'se detalla la consulta SQL = "update tabla1 set cantidad=10, nombre='Marvin' where cantidad=0" 'se hace una instancia del recordset Set RST = New ADODB.Recordset 'se ejecuta la consulta RST.Open SQL, Conexion 'como resultado se actualiza en la tabla llamada TABLA1, los campos CANTIDAD y NOMBRE que cumpla con la condicion Espero te sea e ayuda. Saludos. |
Respuesta: | Saul Hernandez |
hay una instruccion segun tu FOX que estes usando
yo uso el 8.0 y me funciona bien. SELECT * FROM alumno; into cursor sha READWRITE |