Continuando o artigo anterior sobre base de dados...
Para quem quer trabalhar com base de dados, vai necessitar de uma string de conexão. Mais em informações em http://www.connectionstrings.com/ onde podemos encontrar vários servidores de base de dados, bem como e mais importante as strings de conexão com vários exemplos, a não perder.
Alguns uns anos atrás usei muito o Access mas quando começou a surgir o termo de software livre, resolvi experimentar novos sistemas de base dados gratuitos tais como PostreSQL, SQLCe, e hoje o SQLite, de que vou falar neste artigo.
O SQLite é uma biblioteca desenvolvida em C , que permite a sua interacção com dados através de instruções sql. É um mini sistema de gestão de base dados (SGBD) com a possibilidade de ler e escrever directamente num ficheiro local. Actualmente (em 25/10/2011) encontra-se na versão 3.7.8. Implementa a maior parte dos recursos do SQL 92. Não precisa de ser configurando. Capaz de manipular alguns tetrabytes. Estas são apenas algumas das suas características.
SQLite é o servidor.
Vamos então passar a prática:
Algumas das ferramentas disponiveis http://sqlitestudio.one.pl/index.rvt , ou um plugin para o firefox https://addons.mozilla.org/pt-pt/firefox/addon/sqlite-manager/ , ambos são gratuitos. Claro que existem outros, no entanto gostei mais destes dois.
Vamos então criar uma pequena base dados, para o nosso exemplo. Usei o addon para o firefox SQLite Manager
Depois aberta a aplicação e em Databse - New Database damos um nome a nossa base dados. De seguida vamos criar uma Tabela - Create Table (como mostra a figura em baixo)
Depois de criada a tabela contactos, campos(nome,telefone) coisa simples. Vamos então a visual basic .net
Baixar e instalar o provedor para a plantaforma .net do site http://www.sqlite.org/
Referenciar a dll (system.data.sqlite) ao nosso projecto
Baixar e instalar o provedor para a plantaforma .net do site http://www.sqlite.org/
Referenciar a dll (system.data.sqlite) ao nosso projecto
Coloquei num modulo, para que fique disponivel em todo o nosso projecto, aqui vamos criar a nossa connection.
Module
Module1
Public
myConnectionString
As
String
= "Data
Source=D:\dados\basedados.sqlite;Version=3;New=True;Compress=True;"
Public
connection
As
New
SQLite.SQLiteConnection(myConnectionString)
End
Module
Adicionamos um form, ao nosso form adicionamos um datagridview e um button.
Ao seleccionamos aqui no imported namespaces a dll system.data.sqlite ou no form adicionamos Imports System.Data.SQLite
e o restante código
'Imports System.Data.SQLite
Public
Class
Form1
'Declaramos o dataset e
o dataadapter
Dim
ds As
DataSet
Dim
da As
SQLiteDataAdapter
Private
Sub
Form1_Load(ByVal
sender As
System.Object,
ByVal
e As
System.EventArgs)
Handles
MyBase.Load
'A instrução sql,
retorna todos os campos da tabela contactos
Dim
sql As
String
= "select * from
contactos"
'Declaramos a nossa
conexão a base de dados
Dim
connection As
New
SQLiteConnection(myConnectionString)
' Cria um novo
SqliteDataAdapter
da = New
SQLiteDataAdapter(sql,
connection)
' Cria um novo DataSet
ds = New
DataSet("Tabela")
'Define o esquema da
tabela
da.FillSchema(ds,
SchemaType.Source,
"Tabela")
' Preenche o dataset
da.Fill(ds, "Tabela")
'Povoa o nosso
datagridview
DataGridView1.DataSource = ds.Tables("Tabela")
' Limpa a ligação à
base de dados
connection = Nothing
End
Sub
Private
Sub
guardar()
' Comando para
actualizar o dataset
Dim
cb As
New
SQLiteCommandBuilder(da)
' Actualiza a tabela
da.Update(ds, "Tabela")
'Se na nossa tabela
contactos não existir PRIMARY KEY
'não vai actualizar a
nossa base de dados
End
Sub
Private
Sub
Button1_Click(ByVal
sender As
System.Object,
ByVal
e As
System.EventArgs)
Handles
Button1.Click
guardar()
End
Sub
End
Class
Vamos executar...no caso que surja o erro:
"A assemblagem de modo misto foi criada com base na versão 'v2.0.50727' do tempo de execução e não é possível carregá-la no tempo de execução 4.0 sem informações de configuração adicionais." (System.IO.FileLoadException) Exception Message = "A assemblagem de modo misto foi criada com base na versão 'v2.0.50727' do tempo de execução e não é possível carregá-la no tempo de execução 4.0 sem informações de configuração adicionais.", Exception Type = "System.IO.FileLoadException"
O SQLite foi criado na versão 2 do .net, então no menu projecto vamos ter que adicionar um novo item e seleccione Arquivo de configuração do aplicativo (Application Configuration File) . Torná-lo parecido com este:
<?xml
version="1.0"
encoding="utf-8"
?>
<configuration>
<startup
useLegacyV2RuntimeActivationPolicy="true">
<supportedRuntime
version="v4.0"/>
</startup>
</configuration>
Finalmente eis o a funcionar
Até ao próximo artigo...





