AdmBD 06 02

391 palavras 2 páginas
AdmBD 06-02 - ATIVIDADE 06 – EXERCÍCIO 01

1. Definir uma transação para inserir 3 linhas na tabela PROJETO. (BEGIN / COMMIT)

begin; insert INTO projeto VALUES ('1', 'Vinicius', '16/04/1990', '17/04/1991', 10); insert INTO projeto VALUES ('2', 'Rebeca', '18/05/1991', '17/04/1992', 15); insert INTO projeto VALUES ('3', 'Denis', '19/05/1992', '17/04/1993', 20); commit; 2. Definir uma transação cujo objetivo é aumentar o salário em 10% de todos os funcionários que moram na cidade de São Paulo. Efetivar a transação.

begin; UPDATE empregado SET salario = salario * 1.1 WHERE cidade = 'São Paulo'; commit; 3. Definir uma transação cujo objetivo é aumentar o salário em 50% de todos os funcionários que moram na cidade de São Paulo. Não efetivar a transação (não especificar commit). (BEGIN/ROLLBACK)

begin; UPDATE empregado SET salario = salario * 1.5 WHERE cidade = 'São Paulo'; rollback; 4. Definir uma transação para inserir 2 linhas na tabela DEPARTAMENTO. (BEGIN / COMMIT) - D5 com o Nome: Compras - D3 com o Nome: Vendas A transação é efetivada? O que ocorre e por que? begin; insert INTO departamento VALUES ('D5', 'Compras'); insert INTO departamento VALUES ('D3', 'Vendas'); commit; É efetivada: Sim. A transação é efetivada.
Ocorre: “Query returned successfully with no result in 11 ms.”
Porque: O SGBD consegue inserir normalmente as linhas na tabela Departamento, porque as chaves primárias são diferentes.

5. Definir um caso prático com os comandos savepoint e rollback to savepoint, usando seu BDTeste.

BEGIN; INSERT INTO departamento VALUES ('D2', 'CSC'); SAVEPOINT teste01; INSERT INTO departamento VALUES ('D4', 'Customer'); ROLLBACK TO SAVEPOINT teste01; INSERT INTO departamento VALUES ('D1', 'Diretoria');
COMMIT;

6. Responda às seguintes perguntas:

a) A criação de uma tabela precisa do comando commit para efetivar a operação?
Não. A função CREATE TABLE não precisa do COMMIT para

Relacionados