SQLite o Pequeno Notável
SQLite o Pequeno Notável
SQLite o Pequeno Notável
Ganhador do premio Google OReilly 2005 Open Source Awards Winner!, o SQLite tem subido muito no conceito dos programadores, ele gera um banco de dados que pode ser entregue junto com a aplicao, excelente para aplicaes pequenas que com um instalador do tipo NNF (Next, Next, Finish), instala perfeitamente um sistema simples., sem as complicaes da instalao de um cliente/servidor. Caso use em instituies no-publicas. Deve publicar a licena em lugar visvel para os usurios. http://www.sqlite.org/cvstrac/wiki?p=UnsupportedSql , as principais ausncias podem ser vistas abaixo: 2) Suporte a FOREIGN KEY. 4) Suporte Completo ao ALTER TABLE (Somente algumas funcionalidades esto implementadas) 6) GRANT e REVOKE Esses so alguns das principais ausncias nos comandos SQL, vendo o site citado a cima encontra-se a lista completa. Manipulando o Banco de Dados Chega de historio do SQLite e vamos a um exemplo prtico de como utilizado, a verso utilizada a 3.5.0, a verso atual a 3.5.2, eu desenvolvi em Windows, mas o SQLite tem distribuio para Linux tambm. Vou levar em considerao que o arquivo j foi baixado e descompactado no seu computador.
Eu criei um arquivo .bat para facilitar a edio de uma base de dados um arquivo .bat contem instrues do prompt para acessar algum arquivo. Criar esse arquivo facilita muito a edio dos bancos em SQLite, vou dar um exemplo, digamos que o banco fique na pasta Data da sua aplicao, criando um novo documento de texto e colocando a instruo acima utilizada para criar a base e salvando na mesma pasta do banco com extenso .bat, toda vez que voc for utilizar o banco voc executa esse .bat. Vamos agora criar uma tabela simples, com a instruo abaixo: CREATE TABLE Test( Nome varchar(80) ); Como voc pode ver ele no retorna nenhum valor a tela, para saber algumas funes especiais do SQLite basta digitar no prompt .help, e ele retorna todas as opes do SQLite, vamos agora ver como ficou nossa tabela, digite no prompt .schema test, e ai est toda a instruo SQL que compe nossa tabela. Execute as linhas de INSERT abaixo para fazermos alguns teste. INSERT INTO Test VALUES(1, Joao); INSERT INTO Test VALUES(3, Manuel); Aps a insero execute um SELECT * FROM Test; Vamos partir para outra situao, utilizando o mesmo banco o teste.db, um pequeno cliente gostaria de uma aplicao simples onde cadastrasse seus funcionrios e seus cargos e conseguisse um relatrio dos funcionrios que ganham mais que a faixa do cargo. CargoId int NOT NULL, Min_Sal Numeric(10,2), PRIMARY KEY (CargoId)
Vamos a tabela de Funcionrios(Func), que possui um chave primaria composta ou seja cada cargo vai ter uma contagem de funcionrios em sua chave primria: CREATE TABLE Func( CargoId INT NOT NULL, Sal NUMERIC(10,2), FOREIGN KEY (CargoId) REFERENCES Cargos(CargoId) Cargos INSERT INSERT Func INSERT INSERT
INTO Cargos VALUES(1, Gerente, 1000, 3000); INTO Cargos VALUES(3, Office Boy, 300, 490); INTO Func VALUES(1, 1, Carlos, 2750); INTO Func VALUES(1, 3, Joao, 420);
SELECT f.FuncNm, c.CargoNm, f.Sal, c.Max_Sal JOIN Cargos c ON (c.CargoId = f.CargoId); Temos um relatrio assim de todos os funcionrios, porm no foi isso o solicitado, para atender ao pedido basta simplesmente acrescentar a clausula WHERE, e deixar a instruo da seguinte maneira: FROM Func f WHERE f.Sal > c.Max_Sal; E pronto, a est, temos nosso enorme banco de dados com 7KB, segundo meu Windows Explorer, o cliente nem vai sentir o banco rodando, pois ele no um servio um arquivo. Como podem ver, o SQLite bem simples e de fcil uso e ao que tudo indica um pequeno banco de dados que tem tudo para evoluir e se tornar um grande banco de dados. www.sqlite.org