Database
 sql >> Base de Dados >  >> RDS >> Database

Tipos de comandos SQL


A Linguagem de Consulta Estruturada é usada para lidar com dados estruturados. Os dados armazenados na forma de tabelas são dados estruturados. Esses comandos SQL armazenam registros ou dados na tabela e também são usados ​​para buscar os registros das tabelas armazenadas. Existem os quatro tipos de comandos de linguagem de consulta estruturada:
  1. Comandos da linguagem de definição de dados.
  2. Comandos da linguagem de manipulação de dados.
  3. Comandos da linguagem de controle de dados.
  4. Comandos de linguagem de controle de transações.

Comandos da linguagem de definição de dados


DDL é uma abreviação de Linguagem de Definição de Dados. Os comandos da Linguagem de Definição de Dados são usados ​​para lidar com a estrutura, ou seja, a tabela ou relação na qual nossos registros ou dados são armazenados. Os comandos da linguagem de definição de dados são usados ​​para criar, excluir e alterar a tabela. Os comandos da linguagem de definição de dados são:
  1. Comando CRIAR.
  2. Comando ALTER.
  3. Comando DROP.
  4. Comando TRUNCATE.

Comandos CRIAR: Na Linguagem de Consulta Estruturada, armazenamos os dados na tabela, e para criar uma nova tabela ou Banco de Dados, utilizamos o Comando CREATE dos Comandos da Linguagem de Definição de Dados. Abaixo está a sintaxe para criar um banco de dados:
CREATE DATABASE DATABASE_NAME;

Para exemplos,
  • Escreva uma consulta para criar um novo banco de dados seguido pelo nome do banco de dados Empresa.
CREATE DATABASE COMPANY;	

Para verificar se uma empresa de banco de dados é criada, usaremos a seguinte consulta:
SHOW DATABASES; 
Banco de dados
empresa
funcionário
esquema_informação
mysql
esquema_desempenho
phpmyadmin

O resultado acima diz que criamos com sucesso a Empresa Base de dados.
  • Escreva uma consulta para criar uma nova tabela:

Criaremos uma nova tabela de Funcionários dentro da Empresa Base de dados. Devemos selecionar Banco de dados da empresa.
CREATE TABLE TABLE_NAME(COLUMN_NAME1 DATATYPE(COLUMN SIZE), COLUMN_NAME2 DATATYPE (COLUMN SIZE),COLUMN_NAME3 DATATYPE (COLUMN SIZE));

Para selecionar o Banco de Dados da Empresa, usaremos a seguinte consulta:
USE COMPANY;

Agora, selecionamos Empresa como Banco de Dados; executaremos a consulta CREATE TABLE para criar uma tabela:
CREATE TABLE EMPLOYEES (EMPLOYEE INT PRIMARY KEY, FIRST_NAME VARCHAR (20), LAST_NAME VARCHAR (20), SALARY INT, CITY VARCHAR (20) );

Criamos o nome da tabela Funcionários usando a consulta CREATE TABLE.

Para verificar se a tabela Employees foi criada, usaremos a seguinte consulta:
SHOW TABLES;
Tabelas_em_empresa
funcionários

O resultado acima diz que criamos com sucesso a Tabela 'Employees'.

Vamos criar outra tabela usando CREATE TABLE.
CREATE TABLE DEPARTMENT (DEPARTMENT INT PRIMARY KEY, DEPARTMENT_NAME VARCHAR (20));

Criamos o nome da tabela 'Departamento' usando a consulta CREATE TABLE.

Para verificar se a tabela Department foi criada, usaremos a seguinte consulta:
SHOW TABLES;  
Tabelas_em_empresa
funcionários do departamento

O resultado acima diz que criamos com sucesso a Tabela 'Employees'.

Comando ALTER: Na Structured Query Language, sempre que quisermos modificar o esquema ou estrutura da tabela, usaremos o comando ALTER do comando Data Definition Language. O comando ALTER é usado para modificar o esquema da tabela adicionando uma nova coluna, excluindo uma coluna existente da tabela, etc. abaixo está a sintaxe do comando ALTER para adicionar uma nova coluna:
ALTER TABLE TABLE_NAME ADD COLUMN_NAME DATATYPE (COLUMN SIZE);

Sintaxe do comando ALTER para remover uma coluna existente:
ALTER TABLE TABLE-NAME DROP COLUMN COLUMN_NAME;

Sintaxe do comando ALTER para renomear a coluna da tabela existente:
ALTER TABLE TABLE_NAME RENAME COLUMN OLD_COLUMN-NAME TO NEW_COLUMN_NAME;

Por exemplo,
  • Escreva uma consulta para adicionar uma nova coluna na tabela Funcionários:
ALTER TABLE EMPLOYEES ADD DEPARTMENT VARCHAR (20);

Aqui, executamos o comando ALTER TABLE na tabela Employees seguido da palavra-chave ADD, que significa adicionar uma coluna com o nome da coluna Department, o tipo de dados VARCHAR e o tamanho da coluna 20. A consulta acima diz que adicionamos uma nova coluna chamada ' Department' com o tipo de dados VARCHAR e o tamanho da coluna é 20.

Para verificar se uma nova coluna foi adicionada à tabela Funcionários, usaremos o comando DESC na tabela do funcionário.
DESC EMPLOYEES; 
Campo Tipo Nulo Chave Padrão Extras
EMPREGADO int(11) NÃO PRI NULO
FIRST_NAME varchar(20) SIM NULO
LAST_NAME varchar(20) SIM NULO
SALÁRIO int(11) SIM NULO
CIDADE varchar(20) SIM NULO
DEPARTAMENTO varchar(20) SIM NULO

O resultado acima verifica se uma nova coluna foi adicionada com sucesso à tabela do funcionário.

Comando DROP: O comando DROP na linguagem de consulta estruturada é usado para excluir a tabela e o esquema de tabela do banco de dados. Aqui está a sintaxe do comando DROP;
DROP TABLE TABLE_NAME;

Escreva uma consulta para remover a tabela Departamento do banco de dados de funcionários.
DROP TABLE DEPARTMENT;

Aqui, executamos a consulta DROP TABLE na tabela Department.

Para verificar se a tabela Department foi excluída, usaremos a seguinte consulta:
SHOW TABLES;  
Tabelas_em_empresa
Funcionários

O resultado acima indica que excluímos com sucesso a tabela Departamento do Banco de Dados da Empresa.

Comando TRUNCATE: O comando TRUNCATE na Linguagem de Consulta Estruturada remove todos os dados da tabela sem perturbar o esquema da tabela no Banco de Dados. Abaixo está a sintaxe do comando TRUNCATE:
TRUNCATE TABLE TABLE_NAME  

Escreva uma consulta para excluir todos os registros da tabela Funcionários.


Usaremos a consulta SELECT para buscar os dados primeiro da tabela Employees e depois executar a consulta TRUNCATE.
SELECT * FROM EMPLOYEES;
EMPLOYEEID FIRST_NAME LAST_NAME SALÁRIO CIDADE DEPARTAMENTO
1 Vaibhav Sharma 65.000 Noida Oráculo
2 Shweta Sharma 55.000 Jaipur Oráculo
3 Sonali Mali 60.000 Nashik FMW
TRUNCATE TABLE EMPLOYEES;

Aqui, removemos com sucesso todos os dados da tabela Funcionários. Agora, usaremos a consulta SELECT na tabela Employees.
TRUNCATE TABLE EMPLOYEES;

Após executar uma consulta SELECT na tabela Funcionários, o resultado exibirá um conjunto vazio. Isso significa que removemos com sucesso a tabela inteira.

Comando de linguagem de manipulação de dados


DML significa Linguagem de Manipulação de Dados. Os comandos da Linguagem de Manipulação de Dados na Linguagem de Consulta Estruturada manipulam os dados no Banco de Dados. Os comandos da linguagem de manipulação de dados são usados ​​para buscar dados, armazenar dados, modificar os dados e excluir os dados da tabela existente.

Os comandos da linguagem de manipulação de dados na linguagem de consulta estruturada são os seguintes:
  1. Comando SELECIONAR.
  2. Comando INSERIR.
  3. Comando UPDATE.
  4. Comando DELETE.

Primeiro, veremos os comandos INSERT da Linguagem de Manipulação de Dados na Linguagem de Consulta Estruturada. Após INSERT, iremos em direção ao Comando SELECT.

Comando INSERIR: O comando INSERT armazena dados ou registros na tabela do banco de dados. O comando INSERT é o comando importante da Linguagem de Manipulação de Dados na Linguagem de Consulta Estruturada.

Sintaxe do comando INSERT Data Manipulation Language:
INSERT INTO TABLE_NAME VALUES (VALUE1, VALUE2, VALUE3, VALUE);

Esta sintaxe permite todos os campos da tabela. Caso você queira inserir valores para os campos selecionados, use a sintaxe abaixo:
INSERT INTO TABLE_NAME (COLUMN_NAME1, COLUMN_NAME2) VALUES (VALUE1, VALUE2);

A sintaxe acima é usada para armazenar valores para campos selecionados da tabela.

Por exemplo,

Neste exemplo, vamos inserir um registro para todos os campos da tabela.


Vamos pegar a tabela Employees, que está vazia. Vamos INSERT registros na tabela de stud.

Agora vamos armazenar novos registros na tabela Employees. Para armazenar registros na tabela, executaremos o seguinte comando INSERT da linguagem de manipulação de dados:
INSERT INTO EMPLOYEES VALUES (1001, 'VAIBHAVI', 'MISHRA', 65000, 'PUNE', 'ORACLE');
INSERT INTO EMPLOYEES VALUES (1002, 'VAIBHAV', 'SHARMA', 60000, 'NOIDA', 'ORACLE');
INSERT INTO EMPLOYEES VALUES (1003, 'NIKHIL', 'VANI', 50000, 'JAIPUR', 'FMW');
INSERT INTO EMPLOYEES VALUES (1004, 'ANUJA', 'WANRE', 55000, 'DELHI', 'FMW');
INSERT INTO EMPLOYEES VALUES (2001, 'PRACHI', 'SHARMA', 55500, 'CHANDIGARH', 'ORACLE');
INSERT INTO EMPLOYEES VALUES (2002, 'BHAVESH', 'JAIN', 65500, 'PUNE', 'ORACLE');

Inserimos seis registros na tabela de funcionários.

Comando SELECIONAR: Os comandos mais importantes da linguagem de manipulação de dados no SQL é o comando SELECT. O comando SELECT é usado para buscar os dados da tabela especificada, e o comando SELECT também é usado para buscar campos selecionados da tabela usando a cláusula WHERE na consulta.

Sintaxe do comando de linguagem de manipulação de dados SELECT
SELECT * FROM TABLE_NAME;

A sintaxe acima é usada para buscar a tabela inteira.
SELECT COLUMN_NAME1, COLUMN_NAME2, COLUMN_NAMEN FROM TABLE_NAME;

A sintaxe acima é buscar todos os registros da coluna selecionada.
SELECT * FROM TABLE_NAME WHERE COLUMN_NAME;

A sintaxe acima é usada para buscar os registros únicos usando a cláusula WHERE especificada pelo nome da coluna.

Por exemplo, suponha que você queira buscar todos os dados de cada coluna da tabela:
SELECT * FROM EMPLOYEES;

Esta linguagem de consulta estruturada mostra os seguintes dados da tabela EMPLOYEES:
  • Buscar uma única linha de todos os dados usando a cláusula WHERE especificada pelo nome da coluna da tabela:
SELECT * FROM EMPLOYEES WHERE SALARY > 55000;

A consulta acima buscará todos os registros dos funcionários cujo salário seja maior que 55.000.

Esta linguagem de consulta estruturada mostra os seguintes dados da tabela EMPLOYEES:

Comando ATUALIZAR: O comando UPDATE é outro comando valioso da linguagem de manipulação de dados no SQL. Os comandos UPDATE são usados ​​para modificar os registros em uma tabela de banco de dados.

Sintaxe do comando de linguagem de manipulação de dados UPDATE
UPDATE TABLE_NAME SET COLUMN_NAME1 = VALUES, COLUMN_NAME2 = VALUES WHERE CONDITION;

UPDATE, SET, AND WHERE são as palavras-chave da linguagem de consulta estruturada.

Para exemplos,
  • Este exemplo descreve como modificar o valor.

Vamos considerar a tabela EMPLOYEES:
EMPLOYEEID FIRST_NAME LAST_NAME SALÁRIO CIDADE DEPARTAMENTO
1001 VAIBHAVI MISHRA 65.000 PUNE ORACLE
1002 VAIBHAV SHARMA 60.000 NOIDA ORACLE
1003 NIQUIL VANI 50.000 JAIPUR FMW
2001 PRAQUI SHARMA 55500 CHANDIGARH ORACLE
2002 BHAVESH JAIN 65500 PUNE FMW
2003 RUCHIKA JAIN 50.000 MUMBAI TESTE
3001 PRANOTI SHENDE 55500 PUNE JAVA
3002 ANUJA ONDE 50500 JAIPUR FMW
3003 DEEPAM JAUHARI 58500 MUMBAI JAVA
4001 RAJESH GOUD 60500 MUMBAI TESTE
  • Escreva uma consulta para modificar um registro cujo sobrenome seja 'Jain' e defina o valor do departamento como 'FMW'.
UPDATE TABLE_NAME SET COLUMN_NAME1 = VALUES, COLUMN_NAME2 = VALUES WHERE CONDITION;

Usaremos a consulta SELECT na tabela Funcionários onde o Sobrenome é Jain para verificar se o valor foi modificado ou não.
SELECT * FROM EMPLOYEES WHERE LAST_NAME = ‘JAIN’;

Esta linguagem de consulta estruturada mostra os seguintes dados da tabela EMPLOYEES:

Comando DELETE: DELETE é um comando de linguagem de manipulação de dados usado para excluir os registros da tabela. Excluímos registros da tabela usando a cláusula WHERE na consulta.

Sintaxe do comando de linguagem de manipulação de dados UPDATE
DELETE FROM TABLE_NAME WHERE CONDITION;

Por exemplo, vamos considerar a tabela EMPLOYEES:
EMPLOYEEID FIRST_NAME LAST_NAME SALÁRIO CIDADE DEPARTAMENTO
1001 VAIBHAVI MISHRA 65.000 PUNE ORACLE
1002 VAIBHAV SHARMA 60.000 NOIDA ORACLE
1003 NIQUIL VANI 50.000 JAIPUR FMW
2001 PRAQUI SHARMA 55500 CHANDIGARH ORACLE
2002 BHAVESH JAIN 65500 PUNE FMW
2003 RUCHIKA JAIN 50.000 MUMBAI TESTE
3001 PRANOTI SHENDE 55500 PUNE JAVA
3002 ANUJA ONDE 50500 JAIPUR FMW
3003 DEEPAM JAUHARI 58500 MUMBAI JAVA
4001 RAJESH GOUD 60500 MUMBAI TESTE
  • Escreva uma consulta para excluir os dados cujo nome da cidade é 'Mumbai';
DELETE FROM EMPLOYEES WHERE CITY = ‘MUMBAI’;

Usaremos a consulta SELECT na tabela Funcionários para verificar se o valor foi modificado ou não.
SELECT * FROM EMPLOYEES;

Esta linguagem de consulta estruturada mostra os seguintes dados da tabela EMPLOYEES:
EMPLOYEEID FIRST_NAME LAST_NAME SALÁRIO CIDADE DEPARTAMENTO
1001 VAIBHAVI MISHRA 65.000 PUNE ORACLE
1002 VAIBHAV SHARMA 60.000 NOIDA ORACLE
1003 NIQUIL VANI 50.000 JAIPUR FMW
2001 PRAQUI SHARMA 55500 CHANDIGARH ORACLE
2002 BHAVESH JAIN 65500 PUNE FMW
3001 PRANOTI SHENDE 55500 PUNE JAVA
3002 ANUJA ONDE 50500 JAIPUR FMW

O resultado acima mostra que o registro com City Mumbai foi excluído com sucesso.

Comandos da linguagem de controle de dados


DCL é uma abreviação de Data Control Language. Usamos Comandos de Linguagem de Controle de Dados para controlar os privilégios de acesso aos registros dentro das tabelas de Linguagem de Consulta Estruturada. Usando comandos da Data Control Language, podemos dar privilégios a usuários autorizados apenas para acessar os dados colocados nas tabelas ou bancos de dados.

O usuário tem alguns privilégios de acesso pré-criados para acessar os dados colocados nas tabelas apenas para um usuário específico. Usando comandos de linguagem de controle de dados, podemos atribuir privilégios aos usuários na linguagem de consulta estruturada ou banco de dados ou recuperar (Revoke) privilégios dos usuários. Existem dois comandos de linguagem de controle de dados:
  1. CONCESSÃO: Os comandos de concessão são usados ​​para atribuir privilégios de acesso aos usuários para bancos de dados ou tabelas.
  2. REVOGAR: Se pudermos CONCEDER privilégios de acesso aos usuários. Nesse caso, queremos recuperar os privilégios atribuídos do usuário para os bancos de dados. Podemos usar o comando REVOKE para revogar todos os privilégios atribuídos ao usuário.

Linguagem de controle de transações


Na Linguagem de Consulta Estruturada, temos os comandos da Linguagem de Definição de Dados (DDL) e da Linguagem de Manipulação de Dados (DML) da mesma forma que temos os comandos da Linguagem de Controle de Transação (TCL) na Linguagem de Consulta Estruturada. Os comandos da Linguagem de Controle de Transação na Linguagem de Consulta Estruturada são Commit e Reversão .

Quaisquer comandos que executamos são agrupados em uma unidade de trabalho conhecida como transação. Suponha que tenhamos executado uma operação de atualização ou exclusão em uma tabela executada em uma transação. Todas as operações ou comandos de DDL ou DML são armazenados ou executados em uma transação. Para salvar tal DDL ou DML executado, temos que executar o comando commit de uma Transaction Control Language. Commit é usado para salvar todas as operações que realizamos em uma tabela. Toda a operação é salva. Tudo isso é sobre Commit.

Agora, pense, e se quisermos desfazer as operações que salvamos usando os comandos commit? Então podemos desfazer a operação na Linguagem de Consulta Estruturada? Sim, podemos desfazer as operações que estão comprometidas. Usaremos outro comando da Transaction Control Language para desfazer as operações, e esse comando é Rollback. Usaremos o comando Rollback para desfazer a operação de confirmação na Linguagem de Consulta Estruturada. Os comandos sob a Linguagem de Controle de Transações são:
  1. Comprometer
  2. Reversão

Considere as tabelas de funcionários existentes que possuem os seguintes registros:
EMPLOYEEID FIRST_NAME LAST_NAME SALÁRIO CIDADE DEPARTAMENTO
1001 VAIBHAVI MISHRA 65.000 PUNE ORACLE
1002 VAIBHAV SHARMA 60.000 NOIDA ORACLE
1003 NIQUIL VANI 50.000 JAIPUR FMW
2001 PRAQUI SHARMA 55500 CHANDIGARH ORACLE
2002 BHAVESH JAIN 65500 PUNE FMW
2003 RUCHIKA JAIN 50.000 MUMBAI TESTE
3001 PRANOTI SHENDE 55500 PUNE JAVA
3002 ANUJA ONDE 50500 JAIPUR FMW
3003 DEEPAM JAUHARI 58500 MUMBAI JAVA
4001 RAJESH GOUD 60500 MUMBAI TESTE

Podemos usar o comando commit e Rollback sem iniciar as transações, mas iniciaremos nossa transação usando Start Transaction Comando para boas práticas.

Vamos começar e ver cada exemplo de operação um por um.

Primeiro, desativaremos o auto-commit atribuindo um valor de auto-commit a 0
SET AUTOCOMMIT = 0;
  • Insira novos valores nos funcionários da tabela existente e, em seguida, usaremos o comando Commit:
INSERT INTO EMPLOYEES VALUES (2003, ‘RUCHIKA’, ‘JAIN’, 50000, ‘MUMBAI’, ‘TESTING’);

Usaremos a consulta SELECT para verificar se os dados estão inseridos em uma tabela ou não:
SELECT * FROM EMPLOYEES WHERE EMPLOYEE = 2003;

Agora, para salvar esta transação, usaremos o comando commit.
COMMIT;

Os detalhes do ID do funcionário 2001 são salvos agora. Não será Rollback a menos que o excluamos usando o comando Delete.
  • Excluiremos todas as informações do ID do funcionário 2003 e, em seguida, reverteremos o comando de exclusão usando Rollback.
DELETE FROM EMPLOYEES WHERE EMPLOYEE ID = 2003;

Usaremos a consulta SELECT para verificar se os dados são excluídos de uma tabela ou não:
SELECT * FROM EMPLOYEES;

O ID de funcionário 2003 é excluído da tabela. Agora, usaremos o comando Rollback para desfazer a operação de exclusão.
ROLLBACK;

Após executar o comando Rollback, usaremos a consulta SELECT novamente para verificar se a operação de exclusão é Rollback ou não.
SELECT * FROM EMPLOYEES WHERE EMPLOYEE ID = 2003;