
VB6 a VB2008
Publicado por José Antonio (2 intervenciones) el 11/10/2008 13:32:21
Buenos días:
Hasta ahora, he estado programando en Visual Basic 6 para el manejo de bases de datos de Access, pero ya creo va siendo hora de adaptarme a las nuevas versiones y los nuevos conceptos de programación, sobre todo de acceso a datos. La pregunta es la siguiente: adjunto un pedazo de código, con la forma habitual de manejar una tabla de una base de datos en VB6, ¿ Cual sería el equivalente en VB 2008?, ya sea Access o SQL Express.:
------------------------------------------------------
Modulo.bas (declaracion de datos)
----------
Option Explicit
Public dBA As Database
Public tbA As Recordset
Public tbB As Recordset
Public tbC As Recordset
-----------------------
Private Sub main()
Set dBA = Workspaces(0).OpenDatabase(App.Path & "A.mdb")
Set tbA = dBA.OpenRecordset("A", dbOpenTable)
Set tbB = dBA.OpenRecordset("B", dbOpenTable)
Set tbC = dBA.OpenRecordset("C", dbOpenTable)
tbA.Index = "Codigo"
tbB.Index = "Nombre"
tbC.Index = "Codigo"
CargarDatos.Show
End Sub
ejemplo Manipulacion de datos:
private sub Cargardatos()
Dim cadena As String
Dim car As String
Dim nom, ap1, ap2 As String
Dim n, i As Integer
Dim Contador As Integer
Dim sw As Integer
Dim cCod As Double
Do While Not tbC.EOF
cadena = tbC("Cliente")
sw = 0
car = ""
cCod = cCod + 1
ap1 = ""
ap2 = ""
nom = ""
For Contador = 1 To Len(cadena)
car = Mid(cadena, Contador, 1)
If car = " " Then
sw = 1
ElseIf car = "," Then
sw = 2
End If
If sw = 0 Then
ap1 = ap1 + car
ElseIf sw = 1 Then
If car = " " Then
Else
ap2 = ap2 + car
End If
Else
If car = "," Then
Else
nom = nom & car
End If
End If
Next Contador
tbA.AddNew
tbA("Codigo") = cCod
tbA("Nombre") = nom
tbA("Apellido1") = ap1
tbA("Apellido2") = ap2
tbA.Update
tbC.MoveNext
Loop
End Sub
-----------------------------------------------------------------------
Muchas gracias
José Antonio
Hasta ahora, he estado programando en Visual Basic 6 para el manejo de bases de datos de Access, pero ya creo va siendo hora de adaptarme a las nuevas versiones y los nuevos conceptos de programación, sobre todo de acceso a datos. La pregunta es la siguiente: adjunto un pedazo de código, con la forma habitual de manejar una tabla de una base de datos en VB6, ¿ Cual sería el equivalente en VB 2008?, ya sea Access o SQL Express.:
------------------------------------------------------
Modulo.bas (declaracion de datos)
----------
Option Explicit
Public dBA As Database
Public tbA As Recordset
Public tbB As Recordset
Public tbC As Recordset
-----------------------
Private Sub main()
Set dBA = Workspaces(0).OpenDatabase(App.Path & "A.mdb")
Set tbA = dBA.OpenRecordset("A", dbOpenTable)
Set tbB = dBA.OpenRecordset("B", dbOpenTable)
Set tbC = dBA.OpenRecordset("C", dbOpenTable)
tbA.Index = "Codigo"
tbB.Index = "Nombre"
tbC.Index = "Codigo"
CargarDatos.Show
End Sub
ejemplo Manipulacion de datos:
private sub Cargardatos()
Dim cadena As String
Dim car As String
Dim nom, ap1, ap2 As String
Dim n, i As Integer
Dim Contador As Integer
Dim sw As Integer
Dim cCod As Double
Do While Not tbC.EOF
cadena = tbC("Cliente")
sw = 0
car = ""
cCod = cCod + 1
ap1 = ""
ap2 = ""
nom = ""
For Contador = 1 To Len(cadena)
car = Mid(cadena, Contador, 1)
If car = " " Then
sw = 1
ElseIf car = "," Then
sw = 2
End If
If sw = 0 Then
ap1 = ap1 + car
ElseIf sw = 1 Then
If car = " " Then
Else
ap2 = ap2 + car
End If
Else
If car = "," Then
Else
nom = nom & car
End If
End If
Next Contador
tbA.AddNew
tbA("Codigo") = cCod
tbA("Nombre") = nom
tbA("Apellido1") = ap1
tbA("Apellido2") = ap2
tbA.Update
tbC.MoveNext
Loop
End Sub
-----------------------------------------------------------------------
Muchas gracias
José Antonio
Valora esta pregunta


0