O SQL (Strucuted Query Language) é uma linguagem de programação utilizada para gerenciamento de base de dados e pode ser agrupada nas categorias abaixo:
DDL - DATA DEFINITION LANGUAGE:
São comandos que permitem que você crie, substitua, altere, objetos, permissões e configurações do banco de dados. Comandos:- CREATE, ALTER, DROP ou RENAME: Podem ser usados em todos os objetos de banco de dados. Exemplo: CREATE TABLE TESTE ( COLUMN1 NUMBER, COLUMN2 NUMBER);
- TRUNCATE: Usado para apagar todas as linhas de um tabela, diferente de um DELETE sem WHERE ( que tambem apagaria todas as linhas da tabela), o TRUNCATE não permite a execusão de um ROLLBACK. Exemplo: TRUNCATE TABLE TESTE;
- AUDIT, NOAUDIT: Permite ligar/desligar a auditoria de dados. Exemplos: AUDIT ALL BY USUARIO BY ACCESS; / NOAUDIT ALL BY USUARIO;
- COMMENT: Inclui uma observação a um objeto no dicionário de dados. Exemplo: COMMENT ON TABLE RSE.TESTECINTYA IS 'COMENTARIO TABELATESTE';
DCL - DATA CONTROL LANGUAGE
São comandos que definem permissões de acessos dos usuários a determinados objetos do banco. Comandos:
É a categoria de SQL mais utilizada, pois permite a busca de dados, seu principal comando é o SELECT, alguns autores colocam o SELECT como DML. Comando:
- GRANT: conceder privilégios de acesso ao usuário. Exemplo: GRANT SELECT ON TESTE TO USUARIO;
- REVOKE: revogar conceder privilégios de acesso ao usuário. Exemplo: REVOKE SELECT ON TESTE FROM USUARIO;
DML - DATA MANIPULATION LANGUAGE
São comando de manipulação de dados, permitem que vocês inclua, altere ou exclua dados da sua base. Comandos:- INSERT: Inclui dados na tabela. Exemplo: INSERT INTO TESTE (COLUNA1,COLUNA2) VALUES (1,'VALOR COLUNA 2');
- UPDATE: altera dados já existentes na tabela. Exemplo: UPDATE TESTE SET COLUNA2 = 'NOVO VALOR' WHERE COLUNA1 = 1;
- DELETE: Apaga os dados da tabela. Exemplo: DELETE TESTE WHERE COLUNA1 = 1;
TCL - Transaction Control Language
São os comandos para controle de transação ( conjunto de comandos DML). Comandos:- COMMIT: Efetiva as alterações realizadas pelos comandos DML.
- ROLLBACK: Cancela as alterações realizadas pelos comandos DML.
- SAVEPOINT: Definir pontos para possíveis rollbacks ou commits.
DQL- DATA QUERY LANGUAGE
É a categoria de SQL mais utilizada, pois permite a busca de dados, seu principal comando é o SELECT, alguns autores colocam o SELECT como DML. Comando:
- SELECT: consulta de dados. Exemplo: SELECT * FROM DUAL;
Session Control (Controle de sessão)
São os comando para controle das propriedades de uma sessão de usuário, uma sessão é abeta cada vez que realizamos uma conexão com a base de dados.- ALTER SESSION: Altera as propriedades da sessão as alterações realizadas com esse comando serão perdidas assim que a conexão com o banco for fechada. Exemplo: ALTER SESSION SET NLS_DATE_FORMAT = 'YYYY MM DD';