23/06/09

SI 3 | Correcção da ficha de revisões

1. Cria em SQL a base de dados “Banco”
- CREATE DATABASE BANCO

2. Cria as tabelas
- CREATE TABLE T_Contas
(Num_conta NUMBER PRIMARY KEY,
Cod_cliente NUMBER,
Agência NUMBER,

Saldo CURRENCY);

CREATE TABLE T_Agência
(Cod_Agência NUMBER PRIMARY KEY,
Nome_agência TEXT,
Distrito_agência TEXT);


4. Preenche a tabela T_Clientes com os registos
INSERT INTO T_Cliente VALUES (1, “Ana Filipa”, “Lisboa”);
INSERT INTO T_Cliente VALUES (22, “Rui Miguel”, “Coimbra”);
INSERT INTO T_Cliente VALUES (33, “José Manuel”, “Lisboa”);
INSERT INTO T_Cliente VALUES (56, “José António”, “Faro”);
...

7. Cria, em SQL, as próximas consultas que:
a. Devolva todos os dados dos clientes;
SELECT * FROM T_Cliente;

b. Devolva os nomes de todos os clientes;
SELECT Nome_Cliente FROM T_Cliente;

c. Os clientes que são do distrito de Lisboa;
SELECT Nome_Cliente, Distrito_Cliente FROM T_Cliente
WHERE Distrito_Cliente="Lisboa";

d. Os clientes cujo nome começa por “A”;
SELECT Nome_Cliente
FROM T_Cliente
WHERE Nome_Cliente LIKE "A*";

e. O número total de clientes;
SELECT Count(Cod_Cliente)
FROM T_Cliente;

f. Os códigos das contas com um saldo inferior a 600€;
SELECT Cod_cliente, SaldoFROM T_Contas WHERE Saldo <>


g. Devolva a tabela das contas, ordenada descendentemente pelo saldo;
SELECT *FROM T_Contas ORDER BY Saldo DESC;

h. Altere o nome do campo “Saldo” para “Saldo_Bancário”
SELECT Saldo AS Saldo_Bancário FROM T_Contas;

i. Devolva o valor total dos saldos das contas;
SELECT Sum(Saldo) FROM T_Contas;

j. Devolva o num_conta cujo saldo se situa entre 500€ e 1000€;
SELECT Num_conta, Saldo
FROM T_Contas
WHERE Saldo Between 500 And 1000;


k. Devolva as contas com saldo superior a 5000
SELECT Num_conta
FROM T_Contas
WHERE Saldo >5000;

8.Cria, em SQL, as próximas consultas para:
a. Inserir um novo campo data_nascimento dos clientes;
ALTER TABLE T_Cliente ADD COLUMN data_nasc DATE;

b. Inserir novos registos (à tua escolha) nesse campo;
INSERT INTO T_Cliente(data_nasc) VALUES (#20-04-2000#)

c. Eliminar o campo data_nascimento;
ALTER TABLE T_Cliente DROP COLUMN data_nasc DATE;

d. Inserir um novo cliente “105, Marlene, Porto” ;
INSERT INTO T_Cliente VALUES (105, "Marlene", "Porto");

e. Alterar o distrito da Marlene para “Lisboa”;
UPDATE T_Cliente SET Distrito_Cliente="Lisboa"
WHERE Nome_Cliente="Marlene";

f. Eliminar o registo da Zélia Maria;
DELETE FROM T_Cliente WHERE Nome_Cliente="Zélia Maria";

g. Criar uma nova tabela “T_TiposContas”;
h. Adicionar os campos “cod_tipo” e “tipo”;
i. Aplicar a definição de chave primária ao campo “cod_tipo” ;

CREATE TABLE T_TiposContas
(cod_tipo NUMBER PRIMARY KEY,
tipo TEXT);


j. Inserir os registos:[ 1 – conta a ordem] e [2 – conta a prazo];
INSERT INTO T_TiposContas VALUES (1, “Conta à ordem”);
INSERT INTO T_TiposContas VALUES (2, “Conta a prazo”);

Sem comentários: