Comparto codigo para base de datos SQLITE

Hola Amigos.
Desde que adquiri la licencia del Xojo he atormentado el foro con varias consultas, era de esperarse ya que venia de Visual Basic 6 y estaba tan acostumbrado a el que tenia la cabeza un poco cerrada.
En fin estuve provando algunas cosas y les comparto rastros de codigo que funcionan 100 %
Obvio es codigo para Bases de datos SQLITE.
Se escucha cualquier critica la cual permita mejorarlo.
Muchas gracias a todos

Camino es una variable (camino=c:\Xojo_clientes\clientes.s3db)

==================================================================
Proceso para agregar en una tabla de una base de datos

Dim dbFile As FolderItem
Dim db As New SQLiteDatabase
dbFile = GetFolderItem(camino)
db.DatabaseFile = dbFile
If db.Connect Then
Dim row As New DatabaseRecord
row.Column(“dni”) = trim(textfield1.text)
row.Column(“apellido”) = trim(textfield2.text)
row.Column(“nombre”) = trim(textfield3.text)
row.Column(“cuit”) = trim(textfield5.text)
row.Column(“direccion”) = trim(textfield4.text)
row.Column(“telefono”) = trim(textfield6.text)
row.Column(“ciudad”) = trim(textfield7.text)
row.doublecolumn(“saldo”) = 0
DB.InsertRecord(“datos”, row)
If DB.Error Then
MsgBox("DB Error: " + DB.ErrorMessage )
End If
Else
MsgBox("La base de datos no puede ser abierta. Error: " + db.ErrorMessage)
End If
db.close

==================================================================
Proceso para buscar un dato por un campo en especial y editar
el registro

Dim dbFile As FolderItem
Dim db As New SQLiteDatabase
dbFile = GetFolderItem(camino)
db.DatabaseFile = dbFile
If db.Connect Then
Dim rs As RecordSet
rs = db.SQLSelect(“SELECT * FROM datos where dni=’” + trim(textfield1.text) +"’")
If rs <> Nil Then
textfield2.text=rs.Field(“apellido”).StringValue
textfield3.text=rs.Field(“nombre”).StringValue
textfield4.text=rs.Field(“direccion”).StringValue
textfield6.text=rs.Field(“telefono”).StringValue
textfield5.text=rs.Field(“cuit”).StringValue
textfield7.text=rs.Field(“ciudad”).StringValue
label10.text=rs.field(“saldo”).stringvalue
If rs.BOF Then MsgBox(“BOF!”)
db.close
exit sub
End If
Else
MsgBox("La base de datos no puede ser abierta. Error: " + db.ErrorMessage)
End If
db.close

=================================================================
Proceso para borrar un dato buscando al registro por un campo en
Especial

Dim dbFile As FolderItem
Dim db As New SQLiteDatabase
dbFile = GetFolderItem(camino)
db.DatabaseFile = dbFile
If db.Connect Then
  Dim rs As RecordSet
  rs = db.SQLSelect("SELECT * FROM datos where dni='" + trim(textfield1.text) +"'")
  If rs <> Nil Then
    rs.deleterecord
    If rs.BOF Then MsgBox("BOF!")
    rs.Update
    If Not DB.Error Then
      DB.Commit
    Else
      MsgBox("Error: " +DB.ErrorMessage)
    End If
    call limpiar
    db.close
    exit sub
  End If

Else
  MsgBox("La base de datos no puede ser abierta. Error: " + db.ErrorMessage)
End If
db.close

==================================================================
Modificar y guardar los datos editados

Dim dbFile As FolderItem
Dim db As New SQLiteDatabase
dbFile = GetFolderItem(camino)
db.DatabaseFile = dbFile
If db.Connect Then

Dim rs As RecordSet
rs = db.SQLSelect("SELECT * FROM datos where dni='" + trim(textfield1.text) +"'")
If rs <> Nil Then
  
  rs.Edit
  rs.Field("apellido").StringValue=textfield2.text
  rs.Field("nombre").StringValue=textfield3.text
  rs.Field("direccion").StringValue=textfield4.text
  rs.Field("telefono").StringValue=textfield5.text
  rs.Field("cuit").StringValue=textfield6.text
  rs.Field("ciudad").StringValue=textfield7.text
  rs.field("saldo").DoubleValue=val(label10.text)
  If rs.BOF Then MsgBox("BOF!")
  rs.Update
  If Not DB.Error Then
    DB.Commit
  Else
    MsgBox("Error: " +DB.ErrorMessage)
  End If
  call limpiar
  db.close
  exit sub
End If

Else
MsgBox("La base de datos no puede ser abierta. Error: " + db.ErrorMessage)
End If
db.close