Criação de tabelas(Simples)

By mabib

Olá Pessoal,

Hoje estaremos abordando a criação de tabelas, segue os pontos a ser discutido neste artigo:
- O que é uma tabela?
- Representação de uma tabela no SQL Server
- O que é uma chave primária de uma tabela
- O que é a cláusula IDENTITY?
- Criando uma tabela por código

O que é uma tabela?
Tabela nada mais é que uma representação matricial, ou seja, possui colunas e linhas.
E para o SQL Server não é diferente, quando criamos uma tabela, damos o nome das colunas,
que também chamamos de campos ou atributos, e o tipo que elas são, discutidos nos artigos passados.

Represetação de uma tabela no SQL Server
Representa-se assim:
CREATE TABLE tbExemplo
(
coluna1 tipo1,
coluna2 tipo2
)

O que é uma chave primária?
Referem-se a um conjunto de um ou mais campos de uma tabela.
Características:
- Nunca se repetem
- Tem dois tipos de chaves:
Simples: Onde só possui um campo, e o mesmo não pode se repetir
Composta: Onde possui mais de um campo, os valores podem se repetir, mas a combinação entre eles não.
- Pode ser usada como indice para as demais tabelas
- Não pode haver valores nulos nas chaves primárias

O que é a cláusula IDENTITY?
Usada quase sempre em conjunto com a chave primária, Identity é o autonumeração do Access.
No Identity temos 2 propriedades:
Increment, que diz de quanto em quanto vai ser o incremento do seu campo.
Seed, que diz de onde começa o autoincremento.

Exemplificando:
CREATE TABLE tbExemplo
(
campo1 int not null IDENTITY(2,100)
campo2 nvarchar(64)
)
Nessa tabela criamos o campo1 sendo autonumeração que vai andar de 2 em 2, e começar do 100.
Se incluirmos 3 registros ficaria assim:
campo1 campo2
102 Teste1
104 Teste2
106 Teste3
e o próximo?seria o 108 e assim por diante.

Criando uma tabela por código
Neste tópico, mostrarei como cria uma tabela simples por código, mais não vai ser muita surpresa, pois nos posts anteriores, já coloquei a estrutura da tabela.
Para criar uma tabela por código usamos a cláusula CREATE TABLE, sua estrutura é assim:
CREATE TABLE NomeTabela
(
coluna_1 tipo_de_dado_1 [not null],
coluna_2 tipo_de_dado_1 [not null],
coluna_3 tipo_de_dado_1 [not null]
)

o not null entre colchetes, quer dizer que você pode colocar ou não. A omissão dele deixa seu campo recebendo nulo.

Bom chega de bla bla bla, e vamos criar uma tabela de Departamentos, que possui os seguintes atributos:
- ID(que é um autoincremento e nossa chave primária)
- Nome(Que é o nome do departamento)
- DataCadastro(Data de cadastro desse departamento)
- Ativo(E se o departamento está ativo ou não)

Segue:
CREATE TABLE Departamento
(
DepartamentoId bigint not null IDENTITY(1,1),
Nome nvarchar(64) not null,
DataCadastro datetime not null,
Ativo bit not null,
CONSTRAINT PK_Departamento_DepartamentoId PRIMARY KEY(DepartamentoId)
)

Observações:
Falaremos do cláusula CONSTRAINT no próximo artigo, mais resumindo, essa cláusula é usada para criarmos regras para nossas tabelas. Neste exemplo criamos uma regra para adicionarmos uma chave primária.
Existem outras formas para adicionar, mais eu particularmente prefiro assim, pois separa os campos das constraints.
Mais a mesma tabela pode ser criada da seguinte forma:

Forma2:
CREATE TABLE Departamento
(
DepartamentoId bigint not null IDENTITY(1,1) Primary Key,
Nome nvarchar(64) not null,
DataCadastro datetime not null,
Ativo bit not null
)
Nesta forma colocamos a primary key logo na linha do nosso ID, porém o SQL Server gera um nome automaticamente da chave.
O Padrão de nome é PK(primary key)_NomeTabela_NomeCampo
Ex: PK_Departamento_DepartamentoId

Forma3:
CREATE TABLE Departamento
(
DepartamentoId bigint not null IDENTITY(1,1) CONSTRAINT PK_Departamento_DepartamentoId PRIMARY KEY,
Nome nvarchar(64) not null,
DataCadastro datetime not null,
Ativo bit not null
)
Muito parecido com a primeira forma, só muda o lugar que coloca a constraint, que colocamos em cima, ao invés de deixarmos por último.

Bom pessoal, por hoje é só.
Obrigado,
Marcelo

Deixe uma resposta