• Nenhum resultado encontrado

Apostila - SQL. Structured Query Language. Usando HSQLSB

N/A
N/A
Protected

Academic year: 2021

Share "Apostila - SQL. Structured Query Language. Usando HSQLSB"

Copied!
10
0
0

Texto

(1)

Apostila - SQL

Structured Query Language

Usando HSQLSB

(2)

Ìndice Analítico

Ìndice Analítico... 2

INTRODUÇÃO ... 3

Histórico da Linguagem SQL ... 4

Notação Básica Utilizada... 5

Sistema de Banco de Dados Utilizado... 6

Visão geral da Linguagem SQL... 7

CONCEITOS BÁSICOS ... 7

CHAVES PRIMÁRIAS E ESTRANGEIRAS ... 8

HSQLDB ... 9

Baixando e instalando o HSQLDB... 10

CRIAÇÃO DE BANCO DE DADOS ... 11

Tabelas ... 12

Inserção de Registros ... 16

Listagem de Registros... 17

Alteração de Registros ... 21

Remoção de Registros ... 24

Modificação da Estrutura de uma Tabela ... 26

Alterando um nome de coluna ... 27

Alterando um tipo de coluna... 27

Renomeando uma tabela... 27

Adicionando Colunas... 28

Atualizando a Tabela ... 29

Arquivo Morto ... 32

Operadores e Funções... 36

Operadores Aritméticos ... 36

Operadores Relacionais ... 37

Operadores Lógicos ... 38

Operadores Auxiliares ... 40

Definição de Intervalos ... 40

Verificação de Existência ... 41

Verificação de Caracteres ... 42

Se Vazio... 43

Funções Agregadas ... 44

Relacionamentos ... 48

Múltiplas Tabelas... 48

Relacionamento de Tabelas ... 54

Informações Agrupadas ... 57

Definição de Apelidos ... 58

(3)

INTRODUÇÃO

A evolução do processamento de dados automático tem como ponto de partida o século XIX. Neste período ocorreram diversas tentativas de construção de aparelhos mecânicos capazes de efetuar operações matemáticas.

Atualmente, esses aparelhos não são mais mecânicos e sim eletrônicos. Os computadores ganharam um grande espaço de utilização, os quais não são mais usados apenas para efetuar operações matemáticas.

É grande o número de pessoas interessadas em aprender a utilizar os recursos do computador não só como usuários, mas também como profissionais da área de Tecnologia da Informação, que desenvolvem e buscam soluções para problemas específicos de cada área profissional existente.

(4)

Histórico da Linguagem SQL

A linguagem que vamos estudar não é uma linguagem de programação e sim uma linguagem de consulta, utilizada por bancos de dados de todos os tamanhos e velocidades.

SQL (Structured Query Language - Linguagem Estruturada de Consulta).

Através dessa linguagem podemos ter facilidade no acesso a informações, podemos consultar, atualizar e manipular dados que estão em um banco de dados relacional

A linguagem de consulta estruturada SQL foi desenvolvida primeiramente pela IBM (Internacional Business Machine), apresentando sua primeira versão no ano de 1974, com nome Structured English Query Language (SEQUEL), desenvolvida por Donald Chamberlin e outros profissionais da IBM.

Primeiramente foi disponibilizada para um protótipo de banco de dados relacional da IBM, denominado SEQUEL-XRM (1974-1975). Logo depois, entre 1976 e 1977, a IBM apresenta uma revisão da linguagem SEQUEL denominada SEQUEL/2, que posteriormente passou a se chamar SQL.

(5)

Notação Básica Utilizada

Esta apostila respeita a padronização de comandos SQL estabelecidos pela norma ANSE (ANSI/SQL).

Todos os elementos apresentados entre colchetes “[“ e “]” serão considerados opcionais ao código da linguagem.

Todos os elementos entre os sinais de “<” e “>” serão considerados obrigatórios e deverão ser fornecidos para que ocorra o devido funcionamento do comando em teste.

(6)

Sistema de Banco de Dados Utilizado

Para efetuar o estudo, deve ser utilizado um programa de gerenciamento de bancos de dados relacional que possua suporte à linguagem de consulta estruturada SQL.

Os exemplos apresentados foram testados no seguinte sistema de gerenciamento de banco de dados.

HSQLDB 1.8.0.7

Portanto, devem também rodar adequadamente em outros sistemas de gerenciamento de bancos de dados, que possuam suporte à linguagem de consulta estruturada SQL.

Para se ter uma idéia da utilização da linguagem de consulta estruturada SQL, ela é encontrada em diversos gerenciadores de banco de dados relacionais. Entre os muitos existentes, podem-se destacar: Paradox, dBase IV, Access, StarBase, InterBase, SQL Server, Informix, Oracle, Sybase, PostgreSQL, Ingres, Progress, R:Base, SQLBase, WATCON SQL, XDB, FrontBase, My SQL entre outros.

(7)

Visão geral da Linguagem SQL

A linguagem de consulta estruturada SQL é composta por dois grupos de instruções utilizadas no processo de administração e controle de bancos de dados, sendo: DDL (Data Definition Language – Linguagem de Definição de Dados) e DML (Data Manipulation Language – Linguagem de Manipulação de Dados), descritos em seguida:

- As instruções do tipo DDL permitem efetuar a criação das estruturas de tabelas, índices e bancos de dados como um todo. Permitem também efetuar alterações nas estruturas criadas, bem como remover estruturas existentes. Neste grupo estão as instruções: CREATE TABLE, DROP TABLE, ALTER TABLE, CREATE INDEX E DROP INDEX.

- As instruções do tipo DML permitem efetuar a manipulação dos dados que estejam armazenados nas tabelas de um determinado banco de dados.

Desta forma é possível cadastrar, alterar e excluir registros existentes. Neste grupo encontram-se as instruções: INSERT, SELECT, UPDATE e DELETE.

De todos os comandos existentes, o comando SELECT é o mais importante e utilizado, pois é com ele que se obtém a extração de listas de informação.

Os comandos de tipo DML possuem uma grande variedade de aplicação. Para que isto ocorra, eles operam com um grande conjunto de cláusulas (FROM, WHERE, GROUP BY, HAVING e ORDER BY) predefinidas que permitem efetuar a aplicação de condições que alteram a forma de funcionamento.

SQL é uma linguagem de quarta geração muito poderosa, porque com poucas instruções é possível fazer acessos à informação de bancos de dados.

CONCEITOS BÁSICOS

CAMPO – está relacionado à menor unidade de informação a ser armazenado em uma tabela(ou arquivo). Um campo pode apenas armazenar um só tipo de informação que esteja baseado em um único tipo de dado. Cada campo possui um nome identificação, a especificação de um tipo de dado, o tamanho de armazenamento, entre outras informações que sejam necessárias.

REGISTRO – está associado ao fato de ser um conjunto de campos existentes em uma tabela, que representa uma entidade do mundo real, como, por exemplo, a ficha cadastral de uma pessoa.

O conceito TABELA está relacionado ao conjunto de registros.

BANCO DE DADOS – está associado ao conjunto de tabelas.

(8)

BASE DE DADOS – muitas vezes se confunde com banco de dados. Base de dados é o cojunto de banco de dados relacionados entre si.

SGBD – está relacionado ao software (ferramenta) que possibilita a facilidade de gerenciar as funções de edição, consulta, controle e remoção de registros ou tabelas de um banco de dados.

CHAVES PRIMÁRIAS E ESTRANGEIRAS

CHAVE PRIMÁRIA – está associado ao campo ou conjunto de campos de uma tabela que possuirá um único valor, que não será repetido para nenhum registro.

CHAVE ESTRANGEIRA – caracteriza-se por ser uma chave de uma tabela que possui associação com a chave primária de uma outra tabela. É a chave que representa a tabela.

Podem ocorrer três situações de utilização de chave estrangeira.

- Relacionamento um para um - Relacionamento um para muitos - Relacionamento muitos para muitos

INTEGRIDADE REFERENCIAL – é um mecanisco utlizado que evita a quebra de ligação entre os relacionamentos estabelecidos entre tabelas.

(9)

HSQLDB

O HSQLDB é o sucessor do Hypersonic SQL, projeto de sofware livre liderado por Thomas Mueller. Quando o autor decidiu que a versão 1.4.3 seria a última em que trabalharia, a comunidade de usuários criou um novo projeto no SourceForge para dar prosseguimento ao desenvolvimento do banco, que hoje está na versão 1.8.0.7.

MODOS DE OPERAÇÃO

O HSQLDB pode trabalhar em quatro modos de operação distintos: Server, Standalone, Web Server e Servelet. Três desses modos (Server, Web Server e Servelet) permitem o uso de conexões seguras no padrão SSL/TLS, utilizando o JCE (Java Cryptography Extensions).

Standalone

Roda na mesma JVM que a aplicação. Pode haver várias conexões simultâneas, desde que todas partam de outros threads na mesma JVM.

Server

Preferencial para o desenvolvimento, ou quando se usa o HSQLDB como servidor de banco de dados departamental. Nesse modo são aceitas conexões em uma porta TCP, utilizando um protocolo de aplicação próprio do HSQLDB.

Web Server

Situações que se deseja fornecer acesso remoto ao banco de dados, mas há um firewall no meio do caminho, existe o modo de operação Web Server.

Servelet

Atende a usuários de serviços de hospedagem compartilhada em sites web.

(10)

Baixando e instalando o HSQLDB

Para obter o HSQLDB, visite o site do projeto em hsqldb.org e siga o link “download”, que irá redirecionar para a página de arquivos do HSQLDB no portal Sourceforge.

Escolha então o arquivo hsqldb_1_8_0_7.zip (ou uma versão estável mais recente) e faça o download.

Descompacte o arquivo em uma pasta qualquer, criando a estrutura de diretórios apresentada na figura 1.

figura 1. Estrutura de diretórios da instalação do HSQLDB.

O pacote de download inclui os fontes (pasta src), documentação (doc) e aplicações de exemplo (demo). Na pasta lib tempos o pacote hsqldb.jar. Este jar, de cerca de 630 kb, contém o servidor do HSQLDB, aplicações gráficas e de linha de comando para administração, e um driver JDBC para acesso por clientes remotos.

Para uso devemos configurar o Classpath do sistema operacional com o comando a seguir, supondo que o HSQLDB foi descompactado para a pasta /java/hsqldb.

set CLASSPATH = %CLASSPATH%;C:\java\hsqldb\lib\hsqldb.jar no caso do windows.

e

export CLASSPATH=$CLASSPATH:/java/hsqldb/lib/hsqldb.jar no caso do linux.

Referências

Documentos relacionados

Resumo Neste trabalho apresenta-se um procedimento simples e consistente para a consideração da interação solo-estrutura na análise estrutural de edifícios com fundações em

Portanto, a análise dos efeitos dos extratos de caferana no sistema nervoso central forneceu poucas evidências de ação farmacológica, contrastando com a

O ASSINANTE, previamente vinculado a outro contrato de prestação do serviço VÍRTUA, que optar pela contratação, a qualquer tempo, da OPÇÃO FIDELIDADE prevista

Para esta atividade fora proposto trabalhar o conteúdo de composições e decomposições utilizando o ábaco, que se refere a um objeto de madeira retangular com

A Estratégia Acolhimento Mãe-Bebê na Unidade Básica de Saúde, após alta da maternidade, foi implan- tada no Município do Rio de Janeiro em 2003, cumprin- do as linhas de

10.1 O município de Canoas reserva-se o direito de chamar os candidatos aprovados no Concurso Público, na medida de suas necessidades, de acordo com as respectivas ordens

Na sequência, distintos nanocompósitos híbridos foram preparados pelo método de polimerização química in situ na temperatura de 20 o C e diferentes razões molares de

traseira é de no máximo 15cm após a coluna B ( no sentido do painel de instrumentos do veículo). g) Liberada a substituição das caixas de roda traseira para acomodação dos pneus