Prévia do material em texto
SQL Structured Query Language Sumário • Comando INSERT • Comando DELETE • Comando UPDATE Comando INSERT • Utilizado para inserir linha em uma tabela use employee; delete from department; insert into department values (42, ‘Finance’), (128, ‘Research and Development’), (NULL, ‘Human Resources’), (NULL, ‘Marketing’); describe department; Comando INSERT delete from employee; insert into employee values (7513, ‘Nora Edwards’,’Programmer’, 128), (9842, ‘Ben Smith’,’DBA’, 42), (6651, ‘Ajay Patel’,’Programmer’, 128), (9006, ‘Candy Burnett’,’Sys Adm’, 128); Comando INSERT delete from employeeSkills; insert into employeeSkills values (7513, ‘C’), (7513, ‘Perl’), (7513, ‘Java’), (9842, ‘DB2’), (6651, ‘VB'), (6651, ‘Java’), (9006, ‘NT'), (9006, ‘Linux'); Comando INSERT delete from client; insert into client values (NULL, ‘Telco Inc’, ‘1 Collins St Melbourne’,’Fred Smith’, '95551234'), (NULL, ‘The Bank’, ‘100 Bourke St Melbourne’,’Jan Tristan’, ‘95559876'); Comando INSERT delete from assignemnt; insert into assignemnt values (1, 7513, ‘2018-04-24’, 8.5); Outro exemplo - INSERT insert into department set name = ‘Asset Management’; • Permite inserir uma linha de cada vez • Não é necessário especificar valores para todas as colunas select * from department; Cláusula ON DUPLICATE KEY UPDATE Utilizada para registar exceções, tomar alguma ação, advertência, incrementar um contador… Cláusula ON DUPLICATE KEY UPDATE create table warning ( employeeID int primary key not null references employee(employeeID); count int default 1 ) insert into warning(employeeID) values (6651) on duplicate key update count = count + 1; Comando REPLACE • Semelhante a instrução INSERT, exceto por, se um conflito de chaves ocorrer, a nova linha substituirá a antiga replace into nome_tbl [(nome_col,…)] values (expressão,…) Comando DELETE • Permite excluir as linhas de uma tabela delete from department; • Esta instrução excluirá toads as linhas da tabela department Comando DELETE • Cláusula WHERE delete from department where name=‘Asset Management’; • Esta instrução excluirá toads as linhas da tabela department Comando DELETE Forma geral - WHERE e AND delete employee, employeeSkills from employee, employeeSkills, department where employee.employeeID = employeeSkills.employeeID and employee.departmentID = department.departmentID and department.name = ‘Finance'; • Este exemplo exclui todos os funcionários que trabalham para o departamento Finance e apaga todos os registros de suas habilidades Comando DELETE Forma geral - USING delete from employee, employeeSkills using employee, employeeSkills, department where employee.employeeID = employeeSkills.employeeID and employee.departmentID = department.departmentID and department.name = ‘Finance'; • Este exemplo exclui todos os funcionários que trabalham para o departamento Finance e apaga todos os registros de suas habilidades Instrução TRUNCATE Instrução truncate • Permite excluir todas as linhas de uma tabela truncate table employee; • Esta instrução excluirá todos os funcionários da tabela employee • Mais rápido que a instrução DELETE • Elimina a tabela e a recria vazia • TRUNCATE não possui segurança de transação Instrução UPDATE Instrução update • Altera linhas já armazenadas no banco de dados update employee set job = ‘DBA' where employeeID = ‘6651' • Muda o valor da coluna job para o funcionario de numero 6651 • Bastante similar com a instrução DELETE Exercícios • Crie um conjunto de instruções INSERT para colocar dados em cada tabela de sua tabela orders • Apague os dados de suas tabelas