TOP

Lição SQL 14. Criando tabelas (CREATE TABLE)

A linguagem SQL é utilizada não apenas para processar informações, mas também para realizar todas as operações com bancos de dados e tabelas, incluindo a criação e trabalho com tabelas.

Existem duas maneiras de criar tabelas usando:

  • Interface visual - a maioria dos SGBDs possui uma interface visual para criação e gerenciamento de tabelas interativas;
  • Instruções SQL - as tabelas podem ser manipuladas diretamente usando instruções SQL.
  • Vale ressaltar que quando você utiliza o kit de ferramentas interativo do SGBD, na verdade, todo o trabalho é feito por instruções SQL, ou seja, a própria interface cria esses comandos de forma imperceptível para o usuário (isso é semelhante a gravar uma macro em Excel, quando o gravador de macro registra suas ações e as transforma em comandos VBA).


    1. Criação de tabelas

    Para criar tabelas programaticamente, use o operador CREATE TABLE. Para isso, você precisa especificar os seguintes dados:

  • o nome da tabela, que é especificado após a palavra-chave CREATE TABLE;
  • nomes e definições de colunas de tabelas separadas por vírgulas;
  • em alguns SGBDs também é necessário que a localização da tabela seja especificada.
  • Vamos criar uma nova tabela e nomeá-la Customers:

    CREATE TABLE Customers (
    ID             CHAR(10) NOT NULL Primary key,
    Custom_name    CHAR(25) NOT NULL,
    Custom_address CHAR(25) NULL,
    Custom_city    CHAR(25) NULL,
    Custom_Country CHAR(25) NULL,
    ArcDate        CHAR(25) NOT NULL, DEFAULT NOWO)
    

    Sim, primeiro especificamos o nome da nova tabela, depois listamos entre colchetes as colunas que iremos criar, e seus nomes não podem ser repetidos dentro da mesma tabela. Após os nomes das colunas, é especificado o tipo de dados de cada campo (CHAR(10)), em seguida especificamos se o campo pode conter valores vazios (NULL ou NOT NULL), e o campo que será a chave primária (Primary key) também deve ser especificado.

    A linguagem SQL também permite definir um valor padrão para cada campo, ou seja, caso o usuário não especifique um valor para determinado campo, ele será definido automaticamente pelo SGBD. O valor padrão é definido pela palavra-chave DEFAULT ao definir colunas com o operador CREATE TABLE.

    2. Atualizando tabelas

    Para alterar a tabela em SQL, é utilizado o operador ALTER TABLE. Ao usar este operador, você deve inserir as seguintes informações:

  • o nome da tabela que queremos alterar;
  • uma lista de mudanças que queremos fazer.
  • Por exemplo, vamos adicionar uma nova coluna à tabela Sellers, na qual especificaremos o telefone do vendedor:

    ALTER TABLE Sellers  
    ADD Phone CHAR (20)
    

    Além de adicionar colunas, também podemos removê-las. Vamos agora deletar o campo Phone. Para fazer isso, escreveremos a seguinte consulta:

    ALTER TABLE Sellers 
    DROP COLUMN Phone
    

    3. Excluindo tabelas

    As tabelas são excluídas usando o operador DROP TABLE. Para excluir a tabela Sellers_new, podemos escrever a seguinte consulta:

    DROP TABLE Sellers_new
    

    Muitos SGBDs possuem regras que impedem a exclusão de tabelas que já estão vinculadas a outras tabelas. Se essas regras se aplicarem e você excluir tal tabela, o DBMS bloqueará a operação de exclusão até que o relacionamento seja excluído. Tais medidas evitam a exclusão acidental das tabelas exigidas.