AdmBD 06 02
391 palavras
2 páginas
AdmBD 06-02 - ATIVIDADE 06 – EXERCÍCIO 011. 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