Criar tabelas e seus tipos de atributos - SQL Server 
Autor: Edson Gouveia  | Publicado: 2013-04-14T08:56:00-07:00


&nbsp; &nbsp;Ola, galera

&nbsp; &nbsp; &nbsp; &nbsp;Olha eu aqui mais uma vez, daqui a pouco vou me arrumar, ver meu timão em campo, nesse poste eu vou tentar &nbsp;focar no uso de criação de tabelas de registros, Eu&nbsp;já&nbsp;mostrei bastante isso antes, em outros exemplos. Mas aqui vou tentar especificar mais esse recurso do SQL Server, lembrado&nbsp;também&nbsp;que esses postes de banco de dados são a base inicial para depois começar os assuntos de C# na plataforma .Net que futuramente irei começar a postar.

&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;Nos vamos ver como é tão simples criar uma tabela no SQL Server no Management Studio, antes pense bem no nome da tabela que&nbsp;você&nbsp;ira criar, ela pode conter no&nbsp;máximo&nbsp;ate 128 caracteres, nomes de&nbsp;tabelas&nbsp;devem&nbsp;ser&nbsp;únicos&nbsp;e podem conter&nbsp;símbolos&nbsp;por sua&nbsp;preferencia,&nbsp;sublinhas (_), símbolos de @, sinais de libra # e numerais.

&nbsp; &nbsp; &nbsp; Os tipos de atributos são basicamente que tipo irar ter cada coluna na tabela, seja ele tipo varchar, datetime, numeric, decimal, integer, char entre outros! esses são os principais mais utilizados!


VARCHAR: é o tipo de letras, bastante&nbsp;utilizado&nbsp;para nomes, ruas, entre outros, e recomendando usar sempre tipo varchar, quando não vai se trabalhar com&nbsp;cálculos.


NUMERIC ou DECIMAL : Como nome já define, e utilizado para valores&nbsp;numéricos&nbsp;quando vai se trabalhar com cálculos, podendo ser definido o tamanho das casas decimais, durante sua criação do tipo do atributo.

INTEGER: Bastante usando em&nbsp;números&nbsp;inteiros quando não vai se trabalhar com casas decimais, como o SQL não trabalha com virgulas. o tipo Integer só é bastante utilizado em atributos de chave Primaria e Estrangeiras e em valores inteiros!


CHAR: Serve para caracteres de tipo de tamanho&nbsp;único, bastante utilizado em siglas, como por exemplo, siglas de estados que no&nbsp;máximo&nbsp;só pode conter ate 2&nbsp;caracteres, como PE, RJ, SP, isso mantem uma organização dos registros e a integridade da base de dados!

DATETIME: é utilizado em atributos de data e hora!

&nbsp; &nbsp; Esses são os principais tipos de atributos, bastante utilizado, existe muitos, recomendo que&nbsp;você&nbsp;pesquise mais, Mas esses tipos que acabei de&nbsp;mencionar&nbsp;são ideias para se começar a criar tabelas no SQL Server.

Vamos aos&nbsp;códigos:

--Criar base de dados

CREATE DATABASE Banco;
use Banco;

--Criar Tabela de Clientes
CREATE TABLE Cliente(
ID INTEGER PRIMARY KEY IDENTITY(1,1),
NOME VARCHAR(100) NOT NULL,
EMAIL VARCHAR(50),
NASCIMENTO DATETIME,
);

--Cria tabela de produtos
CREATE TABLE PRODUTO(
ID INTEGER PRIMARY KEY IDENTITY(1,1),
NOME VARCHAR(200),
PRECO DECIMAL(18,2)
);

-- criar tabela de venda, que sera associação de Clientes as suas compras de produtos
CREATE TABLE VENDA (
ID INTEGER PRIMARY KEY IDENTITY(1,1),
idCliente INTEGER NOT NULL REFERENCES Cliente(ID),
idProduto INTEGER NOT NULL REFERENCES PRODUTO(ID),
QUANTIDADE INTEGER NOT NULL
);

-- Inserir clientes
INSERT INTO Cliente (Nome,EMAIL, NASCIMENTO) values('Edson Gouveia', 'edson@cstsolutions.com.br', '09-09-1992') ;
INSERT INTO Cliente (Nome,EMAIL, NASCIMENTO) values('Barbara Isadora', 'edson@cstsolutions.com.br', '14-04-1996') ;
INSERT INTO Cliente (Nome,EMAIL, NASCIMENTO) values('Priscila Luanna', 'edson@cstsolutions.com.br', '01-09-1994') ;

-- Inserir produtos
INSERT INTO PRODUTO (Nome,PRECO) values('Sabão em Pó', 4.45);
INSERT INTO PRODUTO (Nome,PRECO) values('Feijão Turquesa', 5.44);
INSERT INTO PRODUTO (Nome,PRECO) values('Macarão Vitarela', 7.44);

-- inserir vendas
INSERT INTO VENDA (idCliente,idProduto, QUANTIDADE) values(1, 1, 4);
INSERT INTO VENDA (idCliente,idProduto, QUANTIDADE) values(2, 2, 6);
INSERT INTO VENDA (idCliente,idProduto, QUANTIDADE) values(3, 3, 10);


--Criar consulta para ver os&nbsp;registros&nbsp;associados!
SELECT Cliente.Nome , Cliente.NASCIMENTO,
Cliente.EMAIL, PRODUTO.NOME AS PRODUTO, PRODUTO.PRECO, VENDA.IdCliente, VENDA.idProduto from Cliente, PRODUTO, VENDA &nbsp;WHERE VENDA.idCliente = CLIENTE.ID and VENDA.idProduto = Produto.ID


-- Total de vendas
SELECT SUM(PRECO) as TOTAL_VENDAS &nbsp;FROM Produto

&nbsp; &nbsp; &nbsp; 
1- Imagem

Clique na imagem para visualizar o código!










&nbsp; &nbsp; &nbsp;Simples e pratico, a parte de criação da tabela associativa&nbsp;através&nbsp;da chave estrangeira como eu ja tinha ensinado em outro poste, se tiver com duvidas veja a aula anterior e criado os inserts para carrega as tabelas com registros.

2- Imagem
Clique na imagem para visualizar o código!







&nbsp; &nbsp; &nbsp; &nbsp; Seguindo o padrão de nome da tabela e nome da coluna para criar o SELECT, e dizendo quais tabelas estarão participando dessa consulta, por ultimo ele faz a associação do ID depois do WHERE no comando.




&nbsp;3- Imagem
Clique na imagem para visualizar o código!


















&nbsp; &nbsp; O ultimo select mostra a soma dos PREÇOS utilizando o recurso do SQL Server, chamando de SUM, ele calcula todos os valores de todos os registros da coluna preço, trazendo o Total de tudo,


4- Imagem

Clique na imagem para visualizar o código!

















Espero que tenha Ajudado!
Que Deus abençoe todos&nbsp;vocês&nbsp;e ate a&nbsp;próxima!