Comandos DML

Os comandos DML tem como função principal manipular os dados presentes no banco de dados. Mais especificamente, os comandos DML permitem inserir, alterar e excluir os registros de um banco de dados. Para executar tais ações, os SGBDs trabalham com quatro tipos de comandos: INSERT, DELETE, UPDATE e SELECT.

O Comando INSERT

Este comando permite a inserção de dados em uma determinada tabela. O trecho de código abaixo mostra a sintaxe básica deste comando:

INSERT INTO tabela (campos) VALUES (valores);

O parâmetro tabela contém o nome da tabela no qual o novo registro será inserido. O parâmetro campos contém o nome dos campos que serão preenchidos. Por fim, o parâmetro valores contém os valores de cada um dos campos declarados no parâmetro anterior. A ordem de declaração dos campos e seus valores garante que cada valor seja inserido corretamente em seu respectivo campo. Em outras palavras, a ordem dos campos e valores deve ser exatamente a mesma. Caso contrário, poderá haver inconsistência dos dados inseridos (Um campo recebe como valor o dado de outro campo, e vice-versa).

O trecho de código abaixo exemplifica a utilização do comando INSERT para inserir um novo registro na tabela:

/* insere novos dados nas categorias */
INSERT INTO categorias (nome) VALUES ("Outros");
INSERT INTO categorias (nome) VALUES ("Pessoal");
INSERT INTO categorias (nome) VALUES ("Trabalho");

/* insere um novo dado nos usuários */
INSERT INTO usuarios (nome, endereco, idade) VALUES ("João", "Rua do João, 1222", 27);

/* insere uma nova tarefa */
INSERT INTO tarefas (descricao, usuario_id, categoria_id) VALUES ("Corrigir trabalhos práticos", 0, 2);

O Comando UPDATE

Este comando permite a atualização dos registros presentes no banco de dados. A sintaxe básica de utilização do comando UPDATE é:

UPDATE tabela
SET col1=val1,col2=val2
WHERE restricoes;

O parâmetro tabela contém o nome da tabela no qual seu registro será atualizado. Difrentemente dos outros comandos, o comando UPDATE vem acompanhado de duas cláusulas: SET e WHERE.

A cláusula SET é utilzada para definir quais colunas, e com quais valores elas serão atualizadas. Por isso, declara-se uma lista de atribuições colN=valN após a declaração da cláusula SET, de forma a informar o nome da coluna e seu novo valor, respectivamente.

A cláusula WHERE é utilzada para restringir quais registros sofrerão atualizações. Esta cláusula é extremamente importante pois, sem sua especificação, o comando UPDATE iria atualizar todos os registros presentes na tabela fornecida. As restrições são expressadas na forma de condições, onde todo o registro que atender a estas condições terá seus dados atualizados.

O trecho de código abaixo mostra um exemplo de utilização do comando UPDATE:

/* atualiza tarefas que já "venceram" */
UPDATE tarefas
SET descricao = 'DONE: ' + descricao
WHERE data_limite < NOW();

O Comando DELETE

Este comando exclui um registro existente do banco de dados. A sintaxe básica de utilização do comando DELETE está descrita abaixo:

DELETE FROM tabela
WHERE restricoes;

O DELETE possui um parâmetro que informa a tabela na qual o registro será excluído, representado por tabela. Além disso, este comando também possui uma cláusula WHERE, que tem como função restringir quais registros serão excluídos. Da mesma forma como acontece no comando UPDATE, todos os registros podem ser excluídos se a cláusula WHERE não for especificada.

O trecho de código abaixo mostra um exemplo de utilização do comando DELETE:

/* exclui todas as tarefas */
DELETE FROM tarefas;

/* remove uma categoria específica */
DELETE FROM categorias
WHERE nome = 'Outros';

O Comando SELECT

O comando SELECT representa um dos comandos mais importantes da linguagem SQL. É por meio do SELECT que o SGBD faz a busca e filtragem de registros existentes no banco de dados. Em outras palavras, o comando SELECT é o único comando existente para a consultda de dados em um banco de dados.

A sintaxe de utilização do comando está descrita abaixo:

SELECT campos FROM tabela
WHERE restricoes;

Basicamente, o comando SELECT admite dois parâmetros: campos e tabela. O parâmetro campos informa a lista de campos que serão recuperados para cada registro encontrado na execução do comando SELECT. Já o parâmetro tabela informa a tabela na qual os registros serão buscados.

Da mesma forma com que ocorre nos comandos UPDATE e DELETE, a cláusula WHERE restringe os registros que serão selecionados, de forma que os registros serão selecionados somente se seus dados estiverem de acordo com as restrições declaradas na cláusula WHERE. Para selecionar todos os registros basta não declarar as restrições.

O trecho de código abaixo mostra um exemplo de utilização do comando SELECT:

/* seleciona todas as categorias */
SELECT * FROM categorias;

/*
    seleciona a descrição e a data limite das
    tarefas que ainda não foram concluídas
*/
 SELECT descricao, data_limite FROM tarefas
 WHERE data_limite > NOW() OR data_limite IS NULL;

results matching ""

    No results matching ""