Banco de Dados Apache Derby / JavaDB - INF

Propaganda
Especialização em web com interfaces
ricas
Banco de Dados Apache Derby / JavaDB
Prof. Fabrízzio Alphonsus A. M. N. Soares
[email protected] [email protected]
Instituto de Informática
Universidade Federal de Goiás
Aula 3
25 de maio de 2012
Prof. Fabrízzio Alphonsus A. M. N. Soares | Banco de Dados Apache Derby / JavaDB
1/1
Apache Derby / JavaDB
Nesta aula você irá conhecer os seguintes componentes:
Banco de dados Apache Derby / JavaDB
Configuração
Estrutura
Ferramentas
Prof. Fabrízzio Alphonsus A. M. N. Soares | Banco de Dados Apache Derby / JavaDB
2/1
Apache Derby / JavaDB I
O Apache Derby é um banco de dados 100% feito em Java.
Para obte-lo baixe o arquivo db-derby-10.8.1.2-bin.zip no link:
http://db.apache.org/derby/releases/release-10.8.1.2.cgi
Prof. Fabrízzio Alphonsus A. M. N. Soares | Banco de Dados Apache Derby / JavaDB
3/1
Instalando I
Para instalar o Apache Derby é simples.
Basta descompactar o arquivo com alguma ferramenta para zip.
Em linux digite:
1
unzip db-derby-10.8.1.2-bin.zip
Prof. Fabrízzio Alphonsus A. M. N. Soares | Banco de Dados Apache Derby / JavaDB
4/1
Instalando I
Para efetuar o processo de instalação, basta configurar as variáveis de ambiente.
Esta tarefa varia para cada S.O.
Além disso, para tornar estas configurações definitivas você deverá fazer isto com permissões de administrador (root).
Caso você não possua este privilégio, você deverá realizar esta
tarefa sempre que for abrir um novo terminal ou reiniciar o
computador.
Prof. Fabrízzio Alphonsus A. M. N. Soares | Banco de Dados Apache Derby / JavaDB
5/1
Instalando II
Para configurar as variáveis no linux, entre no diretório do arquivo descompactado:
1
cd db-derby-10.8.1.2-bin
e então digite os seguintes comandos:
1
2
3
export DERBY_HOME=‘pwd‘
export CLASSPATH="${DERBY_HOME}/lib/derby.jar:${DERBY_HOME}/lib/derbytools.jar"
export PATH=${PATH}:${DERBY_HOME}/bin
Observe que o comando da linha 2 da segunda listagem, o comando pwd está entre dois caracteres crase.1
1
Muito cuidado se for copiar e colar ou digitar os comandos. Qualquer
caractere errado irá causar falhas ao tentar usar as ferramentas do banco.
Prof. Fabrízzio Alphonsus A. M. N. Soares | Banco de Dados Apache Derby / JavaDB
6/1
Criando e hospedando bancos de dados I
Para criar bancos de dados, é necessário, inicialmente, criar um
diretório que irá hospedar os demais bancos de dados. No linux, entre um diretório da sua escolha ou crie e acesse com os
seguintes comandos:
1
2
mkdir bancos
cd bancos
Prof. Fabrízzio Alphonsus A. M. N. Soares | Banco de Dados Apache Derby / JavaDB
7/1
Criando e hospedando bancos de dados II
Agora que você está dentro do diretório, vamos iniciar a criação
do banco de dados.
Para isto será utilizada a ferramenta ij do apache derby.
Para isto, digite:
1
ij
e você verá o prompt do programa escrito:
1
2
versão ij 10.8
ij>
Prof. Fabrízzio Alphonsus A. M. N. Soares | Banco de Dados Apache Derby / JavaDB
8/1
Criando e hospedando bancos de dados III
Agora, no prompt digite o seguinte comando:
1
connect ’jdbc:derby:bancoteste;create=true’;
Observe que parâmetro do comando connect está delimitado
por apóstrofos (aspas simples) e finalizado com um ponto-evírgula ;
Qualquer erro irá dar erro.
Porém, o erro pode demorar a aparecer.
Prof. Fabrízzio Alphonsus A. M. N. Soares | Banco de Dados Apache Derby / JavaDB
9/1
Utilizando o banco de dados I
Pronto! Se não houveram erros até este momento, você agora
tem um banco de dados.
Dentro do diretório que você estava ao executar o comando ij
foi criado um diretório chamado bancoteste que é o nome do
seu banco de dados.
Prof. Fabrízzio Alphonsus A. M. N. Soares | Banco de Dados Apache Derby / JavaDB
10/1
Utilizando o banco de dados II
Neste momento então, já podemos utilizar o banco de dados.
Para isso vamos criar uma tabela de exemplo.
Vamos criar uma tabela chamada aluno com a seguinte estrutura:
matricula
nome
idade
sexo
integer
varchar(50)
integer
char(1)
Prof. Fabrízzio Alphonsus A. M. N. Soares | Banco de Dados Apache Derby / JavaDB
11/1
Utilizando o banco de dados III
Para isto, vamos digitar no prompt do ij o seguinte comando
de DDL/SQL:
1
create table aluno (matricula integer, nome varchar(50), idade
integer, sexo char(1));
Caso você tenha tido sucesso, você verá o seguinte resultado:
1
0 linhas inseridas/atualizadas/excluídas
Caso contrário, reveja seus passos anteriores.
Prof. Fabrízzio Alphonsus A. M. N. Soares | Banco de Dados Apache Derby / JavaDB
12/1
Executando operações I
Agora que possuimos uma tabela, estamos aptos a executar os
comandos para fazer um CRUD.
CRUD - Create (insert), Retrieve (select), Update e Delete.
Prof. Fabrízzio Alphonsus A. M. N. Soares | Banco de Dados Apache Derby / JavaDB
13/1
Testando operações I
Fazendo um insert:
1
insert into aluno (matricula, nome, idade, sexo) values (1, ’
Joao’, 22, ’M’);
e você terá o seguinte resultado:
1
1 linha inserida/atualizada/excluída
Prof. Fabrízzio Alphonsus A. M. N. Soares | Banco de Dados Apache Derby / JavaDB
14/1
Testando operações II
Fazendo um select:
1
select * from aluno;
e você terá o seguinte resultado:
1
2
3
MATRICULA |NOME
|IDADE
|SEXO
------------------------------------------------------------------------------1
|Joao
|22
|M
Prof. Fabrízzio Alphonsus A. M. N. Soares | Banco de Dados Apache Derby / JavaDB
15/1
Testando operações III
Fazendo um update:
1
update aluno set idade = 17 where matricula = 1;
e você terá o seguinte resultado:
1
1 linha inserida/atualizada/excluída
Prof. Fabrízzio Alphonsus A. M. N. Soares | Banco de Dados Apache Derby / JavaDB
16/1
Testando operações IV
Repetindo o select:
1
select * from aluno;
e você terá o seguinte resultado:
1
2
3
MATRICULA |NOME
|IDADE
|SEXO
------------------------------------------------------------------------------1
|Joao
|17
|M
Prof. Fabrízzio Alphonsus A. M. N. Soares | Banco de Dados Apache Derby / JavaDB
17/1
Testando operações V
Fazendo um delete:
1
delete from aluno where matricula = 1;
e você terá o seguinte resultado:
1
1 linha inserida/atualizada/excluída
Prof. Fabrízzio Alphonsus A. M. N. Soares | Banco de Dados Apache Derby / JavaDB
18/1
Testando operações VI
Repetindo o select, mais uma vez:
1
select * from aluno;
e você terá o seguinte resultado:
1
2
3
4
MATRICULA |NOME
|IDADE
|SEXO
------------------------------------------------------------------------------0 linhas selecionadas
Prof. Fabrízzio Alphonsus A. M. N. Soares | Banco de Dados Apache Derby / JavaDB
19/1
Testando operações VII
Para finalizar o ij, basta digitar o comando:
1
exit;
Prof. Fabrízzio Alphonsus A. M. N. Soares | Banco de Dados Apache Derby / JavaDB
20/1
Observações I
1
Uma vez criado seu banco de dados, basta copiar o
diretório que foi criado pelo comando connect e você
poderá transportar seus dados para qualquer lugar.
2
O comando connect não precisa ter o sufixo
create=true. Este comando só é necessário quando se
precisa criar o banco de dados. Quando você for conectar
em um banco que já existe, não use este sufixo. Isto irá
garantir que você esteja conectando no banco desejado e
não criando um vazio.
Prof. Fabrízzio Alphonsus A. M. N. Soares | Banco de Dados Apache Derby / JavaDB
21/1
Observações II
3
Se você não tiver permissão de administrador (root), você
precisará executar os passos de definição das variáveis
DERBY_HOME, etc. Para isto, sugiro que você crie
um script que realize esta tarefa para você, bastando
executar o script quando necessário reiniciar as variaveis.
Prof. Fabrízzio Alphonsus A. M. N. Soares | Banco de Dados Apache Derby / JavaDB
22/1
Exercício I
1
Crie um banco de dados chamado meubanco
2
Crie uma tabela chamada cliente com os campos: (codigo
integer, nome varchar(50), endereco varchar(60), cpf
char(11))
3
Realize pelo menos uma operação de insert, update,
delete e select para testar as operações.
Prof. Fabrízzio Alphonsus A. M. N. Soares | Banco de Dados Apache Derby / JavaDB
23/1
Exercício II
Tabela CLIENTE
codigo
nome
endereco
cpf
integer
varchar(50)
varchar(60)
char(11)
Prof. Fabrízzio Alphonsus A. M. N. Soares | Banco de Dados Apache Derby / JavaDB
24/1
Download