SQLITE E VB6

NETMANIA 14/06/2010 10:40:02
#344739
Ola pessoal da VBMania.

Estou desenvolvendo uma aplicação usando o banco SQLite só que preciso de gostaria de saber se alguem possui alguma string de conexão para este banco de dados usando o VB6. Na StringConnection achei exemplos para usar com o as linguagens .Net e pesquisando na Internet, não achei nenhum exemplo.

Conto com a ajudas de vocês para me ajudar a resolver este problema.

P.S. Não gostaria de criar uma conexão ODBC para fazer a conexão, porem, sei que será necessário instalar o driver de ODBC do SQLite para este funcionar.
FFCOUTO 14/06/2010 11:13:36
#344743
Resposta escolhida
Não é necessário ODBC nem string de conexão. No anexo tem a dll e um módulo com as chamadas API para utilização do banco SQLite.

O retorno das consultas SELECT são retonados via Array então você terá que fazer um loop para visualizar os dados.

Se precisar te mando um exemplo de como utilizar o bd.
NETMANIA 14/06/2010 11:41:22
#344749
FFouco, seria possível você enviar um exemplo com Select e comandos de edição dos dados na tabela (Insert, Update, Delete)?
FFCOUTO 14/06/2010 19:23:24
#344797
Assumindo que você vá abriu o banco de dados e tem o handle na variável hDB:

SELECT

Sub CarregarDados()   
Dim i As Integer
Dim sSQL As String, sErro As String
Dim r() As Variant
Dim lContar As Long
Dim xList As ListItem

sSQL = [Ô]SELECT id, nome, endereco FROM tabela WHERE (nome = [ô]teste[ô]) ORDER BY id;[Ô]
r = sqlite3vb_get_table(hDB, sSQL, sErro)
lContar = number_of_rows_from_last_call

[ô]Limpa a lista
ListView1.ListItems.Clear
ListView1.Refresh

If lContar > 0 Then
For i = 1 To lContar
Set xList = ListView1.ListItems.Add
xList.Text = r(i, 1)
xList.SubItems(1) = r(i, 2)
xList.SubItems(2) = r(i, 3)
Next
End If
End Sub


INSERT

Sub InserirDados()
Dim sSQL As String, sErro As String
Dim r() As Variant
Dim lContar As Long

sSQL = [Ô]INSERT INTO tabela (id, nome, endereço) VALUES (1, [ô]teste[ô], [ô]meu endereço[ô]);[Ô]
r = sqlite3vb_get_table(hDB, sSQL, sErro)
lContar = sqlite3vb_changes(hDB)

If lContar > 0 Then
MsgBox [Ô]Registro adicionado com sucesso.[Ô], vbExclamation
End If
End Sub


UPDATE

Sub AtualizarDados()
Dim sSQL As String, sErro As String
Dim r() As Variant
Dim lContar As Long

sSQL = [Ô]UPDATE tabela SET nome = [ô]novo nome[ô] WHERE (id = 1);[Ô]
r = sqlite3vb_get_table(hDB, sSQL, sErro)
lContar = sqlite3vb_changes(hDB)

If lContar > 0 Then
MsgBox [Ô]Registro modificado com sucesso.[Ô], vbExclamation
End If
End Sub


DELETE

Sub ExcluirDados()
Dim sSQL As String, sErro As String
Dim r() As Variant
Dim lContar As Long

sSQL = [Ô]DELETE FROM tabela WHERE (id = 1);[Ô]
r = sqlite3vb_get_table(hDB, sSQL, sErro)
lContar = sqlite3vb_changes(hDB)

If lContar > 0 Then
MsgBox [Ô]Registro excluído com sucesso.[Ô], vbExclamation
End If
End Sub



espero ter ajudado.
Tópico encerrado , respostas não são mais permitidas