Como usar o SQL (Structured Query Language)

O SQL (Structured Query Language) é uma linguagem de computador para criar bancos de dados e manipular dados. O SQL é um padrão ANSI (American National Standard Institute) e é suportado por quase todos os Sistemas de Gerenciamento de Banco de Dados Relacionais (RDBMS) como Oracle, MySQL, SQLServer, MS Access, PostGreSQL, etc. O SQL tem duas partes:

  • Linguagem de Definição de Dados (DDL – em inglês, Data Definition Language): para criar, alterar, ou encerrar tabelas e índices.
  • Linguagem de Manipulação de Dados (DML – em inglês, Data Manipulation Language): para inserir, atualizar, recuperar ou apagar os dados nas tabelas.

Veja como utilizar o SQL.

  • Instale um pacote RDBMS. Você pode baixar o MySQL do endereço mysql.org em seu sistema operacional (SO) e instalá-lo usando as instruções dadas. Para o Sistema Operacional Windows, o pacote pode ser instalado clicando-se duas vezes no instalador e escolhendo-se os valores padrão para cada etapa.

  • Inicie o serviço Mysql. Na janela do prompt de comando, altere o diretório para C: \mysql\bin (se você instalou o MySQL no disco C:) e digite seguinte comando para iniciar o serviço MySQL:
    NET START mysql

  • Inicie o cliente Mysql.Na janela do prompt de comando, altere o diretório para C: \mysql\bin e emita o comando mysql para receber o prompt do mysql.

  • Crie um banco de dados. No prompt do MySQL.  digite 'create database', seguido por qualquer nome do banco de dados. Lembre-se de colocar ponto e vírgula no final do comando:
    create database emp;

  • Defina o banco de dados criado como ativo. Para fazer isso, digite o comando ‘USE’ seguido pelo nome do banco de dados mysql no prompt:
    use emp

  • Crie uma tabela. Para isso, use o comando 'CREATE TABLE' com o nome e o tipo de dados de cada campo da tabela. Você também pode especificar PRIMARY KEY e qualquer outra restrição como NOT NULL. Por exemplo:
    CREATE TABLE pessoa
    (NOME VARCHAR (80) PRIMARY NOT NULL,
    DSGN VARCHAR (5),
    IDADE INTEGER,
    SALARIO INTEGER
    );

  • Insira alguns dados na tabela criada.Isto é conseguido através do comando "INSERT INTO" seguido pelo nome da tabela e valores a serem inseridos.

    • Se você precisar inserir uma linha com valores para todas as colunas, utilize o seguinte comando:
      INSERT INTO pessoa VALUES ( 'Kakul', 'MGR', 26,35000);

    • Se você precisa inserir valores apenas para colunas selecionadas, então precisará especificar também os nomes das colunas no comando, como mostrado:
      INSERT INTO pessoa (NOME) VALUES ( 'Feroz ");

    Repare que conteúdos em forma de texto são inseridos dentro de aspas simples e cada comando é encerrado com um ponto e vírgula.

  • Atualize a tabela.

    • Use o comando UPDATE juntamente com o conjunto SET + nomes dos valores, como:
      UPDATE pessoa SET salario = 50000;

    • Para atualizar uma linha em especial, use a cláusula WHERE no comando UPDATE como:
    • UPDATE pessoa SET salario = 20000 WHERE NAME = 'Kakul';

  • Recupere os dados armazenados. Use o comando SELECT para recuperar dados. Para recuperação condicional, você pode usar a claúsula WHERE. Tente as seguintes consultas:

    • Para recuperar todas as COLUNAS e todas as linhas:
      SELECT * FROM pessoa;

    • Para obter a lista ordenada, use a cláusula ORDER BY:
      SELECT * FROM pessoa ORDER BY nome;

    • Para recuperar algumas colunas de todas as linhas:
      SELECT nome FROM pessoa;

    • Para obter todas as colunas de uma linha em particular:
      SELECT * FROM pessoa WHERE name = "Feroz";

    • Para obter as colunas selecionadas de uma linha em particular:
      SELECT salario FROM person WHERE nome = 'Kakul';

    • Para recuperar uma linha com colunas com um padrão em particular (por exemplo, salario todos os empregados cujo nome começa com K):
      SELECT salario FROM pessoa WHERE nome = 'K%';

    • Para contar o número de registros na tabela (digamos que você quer saber o número de empregados):
      SELECT COUNT (*) FROM pessoa;

    • Para obter a soma de uma coluna (digamos que você precisa saber o total a ser pago em salários):
      SELECT SUM (PAY) FROM pessoa;

    • Utilize E/OU na cláusula WHERE para recuperar dados com base em múltiplas condições:
      SELECT * FROM pessoa WHERE nome LIKE '% K' E salario > 5000;

    • Para agrupar resultados, utilize GROUP BY como a seguir:
      SELECT * FROM pessoa GROUP BY dsgn;

    • Para mostrar grupos que satisfazem um critério, use HAVING como ilustrado abaixo:
      SELECT * FROM pessoa GROUP BY dsgn HAVING salario >12000;

    • Para recuperar resultados se um campo tiver qualquer um de uma lista de valores, use a cláusula IN:
      SELECT * FROM pessoa where nome IN ( 'Feroz’,’ Kakul');

    Você pode tentar consultar utilizando também outras funções como AVG, DISTINCT, BETWEEN etc

  • Acrescentar uma coluna à tabela. Isto é feito através do comando ALTER como:
    ALTER TABLE pessoa ADD experiencia INTEGER;

  • Defina um alias para a tabela pessoa usando somente algumas colunas. Para isso, use AS como ilustrado abaixo:
    SELECT NOME, DSGN FROM pessoa AS empregados;

  • Excluir registros da tabela.

    • Para excluir um determinado registro, uso o comando DELETE com a cláusula WHERE como:
      DELETE * FROM pessoa WHERE nome = "Feroz";

    • Para excluir todos os registros, utilize:
      DELETE FROM pessoa;
      Todos os registros também podem ser eliminados utilizando o comando TRUNCATE como:
      TRUNCATE TABLE pessoa;

  • Remover a coluna acrescentada no passo 10 acima. Você tem que usar novamente o comando ALTER, com a cláusula DROP, conforme abaixo:
    ALTER TABLE pessoa DROP experiencia;

    Observe que, quando você utiliza o comando ADD, tem de especificar também o tipo dos dados da coluna, o que obviamente não é mais necessário quando você utiliza a cláusula DROP.

  • Excluir a tabela criada. Utilize o comando DROP TABLE, seguido pelo nome tabela.
    DROP TABLE pessoa;

  • Excluir também a própria base de dados. Use o comando DROP DATABASE, seguido pelo nome do banco de dados.
    DROP DATABASE emp;

  • Experimente avançar em temas do SQL, como a criação de visões (views), procedimentos armazenados, cursores, junção de tabelas (join). Faça pesquisas na Internet com o termo MYSQL. Você vai encontrar farto material para um ou dois anos de estudos e aprofundamento.