Sei sulla pagina 1di 24

Especializao em web com interfaces

ricas

Banco de Dados Apache Derby / JavaDB

Prof. Fabrzzio Alphonsus A. M. N. Soares

fabrizzio@inf.ufg.br professor.fabrizzio@gmail.com
Instituto de Informtica
Universidade Federal de Gois

Aula 3
25 de maio de 2012

Prof. Fabrzzio 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
Configurao
Estrutura
Ferramentas

Prof. Fabrzzio 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. Fabrzzio 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. Fabrzzio Alphonsus A. M. N. Soares | Banco de Dados Apache Derby / JavaDB 4/1
Instalando I

Para efetuar o processo de instalao, basta configurar as va-


riveis de ambiente.
Esta tarefa varia para cada S.O.
Alm disso, para tornar estas configuraes definitivas voc de-
ver fazer isto com permisses de administrador (root).
Caso voc no possua este privilgio, voc dever realizar esta
tarefa sempre que for abrir um novo terminal ou reiniciar o
computador.

Prof. Fabrzzio Alphonsus A. M. N. Soares | Banco de Dados Apache Derby / JavaDB 5/1
Instalando II

Para configurar as variveis no linux, entre no diretrio do ar-


quivo descompactado:
1 cd db-derby-10.8.1.2-bin

e ento digite os seguintes comandos:


1 export DERBY_HOME=pwd
2 export CLASSPATH="${DERBY_HOME}/lib/derby.jar:${DERBY_HOME}/lib/derbytools.jar"
3 export PATH=${PATH}:${DERBY_HOME}/bin

Observe que o comando da linha 2 da segunda listagem, o co-


mando 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. Fabrzzio 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, necessrio, inicialmente, criar um


diretrio que ir hospedar os demais bancos de dados. No li-
nux, entre um diretrio da sua escolha ou crie e acesse com os
seguintes comandos:
1 mkdir bancos
2 cd bancos

Prof. Fabrzzio 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 diretrio, vamos iniciar a criao


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 verso ij 10.8
2 ij>

Prof. Fabrzzio 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 parmetro do comando connect est delimitado


por apstrofos (aspas simples) e finalizado com um ponto-e-
vrgula ;
Qualquer erro ir dar erro.
Porm, o erro pode demorar a aparecer.

Prof. Fabrzzio Alphonsus A. M. N. Soares | Banco de Dados Apache Derby / JavaDB 9/1
Utilizando o banco de dados I

Pronto! Se no houveram erros at este momento, voc agora


tem um banco de dados.
Dentro do diretrio que voc estava ao executar o comando ij
foi criado um diretrio chamado bancoteste que o nome do
seu banco de dados.

Prof. Fabrzzio Alphonsus A. M. N. Soares | Banco de Dados Apache Derby / JavaDB 10/1
Utilizando o banco de dados II

Neste momento ento, j podemos utilizar o banco de dados.


Para isso vamos criar uma tabela de exemplo.
Vamos criar uma tabela chamada aluno com a seguinte estru-
tura:
matricula integer
nome varchar(50)
idade integer
sexo char(1)

Prof. Fabrzzio 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/excludas

Caso contrrio, reveja seus passos anteriores.

Prof. Fabrzzio Alphonsus A. M. N. Soares | Banco de Dados Apache Derby / JavaDB 12/1
Executando operaes 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. Fabrzzio Alphonsus A. M. N. Soares | Banco de Dados Apache Derby / JavaDB 13/1
Testando operaes 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/excluda

Prof. Fabrzzio Alphonsus A. M. N. Soares | Banco de Dados Apache Derby / JavaDB 14/1
Testando operaes II

Fazendo um select:
1 select * from aluno;

e voc ter o seguinte resultado:


1 MATRICULA |NOME |IDADE |SEXO
2 -------------------------------------------------------------------------------
3 1 |Joao |22 |M

Prof. Fabrzzio Alphonsus A. M. N. Soares | Banco de Dados Apache Derby / JavaDB 15/1
Testando operaes III

Fazendo um update:
1 update aluno set idade = 17 where matricula = 1;

e voc ter o seguinte resultado:


1 1 linha inserida/atualizada/excluda

Prof. Fabrzzio Alphonsus A. M. N. Soares | Banco de Dados Apache Derby / JavaDB 16/1
Testando operaes IV

Repetindo o select:
1 select * from aluno;

e voc ter o seguinte resultado:


1 MATRICULA |NOME |IDADE |SEXO
2 -------------------------------------------------------------------------------
3 1 |Joao |17 |M

Prof. Fabrzzio Alphonsus A. M. N. Soares | Banco de Dados Apache Derby / JavaDB 17/1
Testando operaes V

Fazendo um delete:
1 delete from aluno where matricula = 1;

e voc ter o seguinte resultado:


1 1 linha inserida/atualizada/excluda

Prof. Fabrzzio Alphonsus A. M. N. Soares | Banco de Dados Apache Derby / JavaDB 18/1
Testando operaes VI

Repetindo o select, mais uma vez:


1 select * from aluno;

e voc ter o seguinte resultado:


1 MATRICULA |NOME |IDADE |SEXO
2 -------------------------------------------------------------------------------
3
4 0 linhas selecionadas

Prof. Fabrzzio Alphonsus A. M. N. Soares | Banco de Dados Apache Derby / JavaDB 19/1
Testando operaes VII

Para finalizar o ij, basta digitar o comando:


1 exit;

Prof. Fabrzzio Alphonsus A. M. N. Soares | Banco de Dados Apache Derby / JavaDB 20/1
Observaes I

1 Uma vez criado seu banco de dados, basta copiar o


diretrio que foi criado pelo comando connect e voc
poder transportar seus dados para qualquer lugar.
2 O comando connect no precisa ter o sufixo
create=true. Este comando s necessrio quando se
precisa criar o banco de dados. Quando voc for conectar
em um banco que j existe, no use este sufixo. Isto ir
garantir que voc esteja conectando no banco desejado e
no criando um vazio.

Prof. Fabrzzio Alphonsus A. M. N. Soares | Banco de Dados Apache Derby / JavaDB 21/1
Observaes II

3 Se voc no tiver permisso de administrador (root), voc


precisar executar os passos de definio das variveis
DERBY_HOME, etc. Para isto, sugiro que voc crie
um script que realize esta tarefa para voc, bastando
executar o script quando necessrio reiniciar as variaveis.

Prof. Fabrzzio Alphonsus A. M. N. Soares | Banco de Dados Apache Derby / JavaDB 22/1
Exerccio 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 operao de insert, update,
delete e select para testar as operaes.

Prof. Fabrzzio Alphonsus A. M. N. Soares | Banco de Dados Apache Derby / JavaDB 23/1
Exerccio II

Tabela CLIENTE

codigo integer
nome varchar(50)
endereco varchar(60)
cpf char(11)

Prof. Fabrzzio Alphonsus A. M. N. Soares | Banco de Dados Apache Derby / JavaDB 24/1

Potrebbero piacerti anche