SQL e Visual Basic
A linguagem SQL(Structured Query Language) é uma linguagem de alto nível para manipulação de dados dentro do modelo relacional.
Seu objetivo é fornecer uma interface de alto nível ao usuário.
É uma linguagem não procedural, e, não cabe ao usuário definir como o gerenciador de banco de dados executará uma tarefa, mas somente o ele que deve fazer.
Uma instrução SQL consiste em três partes:
– As declarações de parâmetros
– A instrução manipulativa
– As declarações de opções
Para termos uma idéia do seu poder, imagine que temos que atualizar o campo valor em 10% de uma tabela com diversos registros. Na abordagem procedural teríamos os seguintes passos a seguir:
1. Abrir a tabela
2. Posicionar o ponteiro no início da tabela
3. Atualizar o campo valor em 10%
4. Atualizar tabela
5. Movermos o ponteiro para o próximo registro
6. Continuar a atualização do campo valor até o final da tabela
O código poderia Ter o seguinte aspecto:
Dim db as database
Dim tabela as recordset
set db=workspaces(0).Opendatabase(“c:\base.mdb”)
set tabela=db.Openrecordset(“tabela”)
While not tabela.eof
Tabela.edit
Tabela.valor=tabela.valor*1.10
Tabela.update
Tabela.movenext
Wend
Tabela.close
Agora utilizando uma instrução SQL teríamos o seguinte código:
Dim db as Database
Set db=Workspaces(0).Opendatabase(“c:\base.mdb”)
Db.execute “UPDATE tabela SET valor=valor*1.10”
Db.close
Vejamos abaixo as cláusulas manipulativas e suas finalidades:
Instrução
SELECT – Obtém um grupo de registros e insere os registros em um dynaset
ou em uma tabela
UPDATE – Define os valores dos campos de uma tabela em uma atualização
TRANSFORM – Cria uma tabela de resumo, utilizando o conteúdo de um campo como cabeçalho de cada coluna
DELETE FROM – Remove registros de uma tabela
INSERT INTO – Acrescenta um grupo de registros a uma tabela.
Vejamos alguns exemplos da instrução SELECT:
1. Seleciona os campos “Primeiro nome” e “Sobrenome” de todos os registros da tabela Empregados.
SELECT [Primeiro nome],[Sobrenome] FROM Empregados
2. Seleciona todos os campos da tabela Empregados. Note o uso do parâmetro (*) indicando todos os campos da tabela indicada.
SELECT Empregados.* FROM Empregados
3. Conta o número de registros que têm uma entrada no campo “Código postal” e coloca o título contagem no topo da coluna.
SELECT Count([Codigo postal]) AS Contagem FROM Clientes
4. Seleciona os campos “Nome Fantasia” e “Razao Social” de cada registro cujo Razao Social seja Web Mundi.
SELECT [Nome Fantasia],[Razao Social] FROM Empresas WHERE [Razao Social]=’Web Mundi’
5. Seleciona os campos “Nome Fantasia” e “Razão Social” para Empresas cujo a Razão Social comece pela letra S.
SELECT [Nome Fantasia],[Razao Social] FROM Empresas WHERE [Razao Social] Like ‘S*’
FROM – Indica as tabelas utilizadas como fonte de dados
WHERE – Especifica as condições que os registros devem satisfazer para compor o subconjunto de dados.