Visual Basic 6 consulta sobre recordset ADO...

Tengo el siguiente código:
Option Explicit
Dim MiConexion As ADODB.Connection
Dim MiRecordset As ADODB.Recordset
Dim ruta As String
Private Sub Form_Load()
Set MiConexion = New ADODB.Connection
Set MiRecordset = New ADODB.Recordset
ruta = App.Path & "\bd1.mdb"
MiConexion.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=" & ruta & ";Persist Security Info=False"
MiConexion.CursorLocation = adUseClient
MiConexion.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & ruta
MiRecordset. Open "ALTER TABLE MANZANA ADD COLUMN NOMBRE TEXT(80)", MiConexion, adOpenDynamic, adLockOptimistic
MiRecordset. Close
MiConexion. Close
End Sub
...
Este código agrega una nueva columna a mi tabla MANZANA, esta nueva columna se llama NOMBRE y es de tipo text con 80 caracteres de espacio, lo hace bien, pero no sé porque aparece un mensaje que dice: "La operación no está permitida si el objeto está cerrado".
...
¿Alguien me puede decir como hacer para que no me aparezca ese mensaje de error?

1 Respuesta

Respuesta
1
Hice una modificación a tu código a ver si te sirve
Option Explicit
Dim MiConexion As ADODB.Connection 
Dim MiRecordset As ADODB.Recordset 
Dim ruta As String 
Private Sub Form_Load() 
Set MiConexion = New ADODB.Connection 
Set MiRecordset = New ADODB.Recordset 
ruta = App.Path & "\bd1.mdb" 
MiConexion.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=" & ruta & ";Persist Security Info=False" 
MiConexion.CursorLocation = adUseClient 
MiConexion.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & ruta 
MiRecordset. Open "ALTER TABLE MANZANA ADD COLUMN NOMBRE TEXT(80)", MiConexion, adOpenDynamic, adLockOptimistic
if MiRecordset.State <> 0 Then MiRecordset.Close 
MiConexion.Close 
End Sub
Gracias. Funcionó. Entonces el recordset esta abierto o en otro estado con la función ALTER porque al utilizarlo con SELECT no aparece este error. Lo cual me parece extraño. Recomiéndame libros necesito leer más, antes de finalizar la pregunta, por favor.
Así es con la sentencia ALTER no se abre el recordset sólo se afecta su estructura

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas