Um dos tópicos
importantes para quem trabalha com Banco de Dados é o tipo de dados. Deve-se
compreender bem os tipos de dados existentes.
Nesse post abordaremos
os tipos de dados para o SQL Server. Caso utilize outro banco, os tipos podem
ser diferentes, mas o conceito geral se aplica a todos.
Por exemplo, no Oracle
existe um tipo de dados chamado “Varchar2”, que não existe no SQL Server. Mas esse
tipo pertence a categoria de “Cadeias de caracteres” (popularmente chamada de
String’s) e essa categoria existe nos dois.
O objetivo desse post é que entenda o que é um Tipo "Numérico" e uma “Cadeias de caracteres”.
O objetivo desse post é que entenda o que é um Tipo "Numérico" e uma “Cadeias de caracteres”.
1-
Tipos
Numéricos
Como o próprio nome diz,
é o tipo de dados que utiliza números. Por exemplo, em um banco de dados de
Vendas, você pode querer saber a quantidade de produtos vendidos. Posso vender
1, 10, 100, 1000 ou N produtos. Então ficou fácil. Para números posso utilizar
os inteiros de 0 a n e tudo resolvido.
Mas espere um pouco, e
se quiser obter os valores de cada produto? Um valor pode conter os centavos.
Por exemplo, o produto A pode custar R$ 30,99.
Nesse caso posso usar
decimais com 2 casas a direita. De 0,00 a N,99.
Mas e se eu tiver um
prejuízo nas vendas? Para representar isso preciso de um numero negativo, por
exemplo, prejuízo de – R$ 500,00.
Os exemplos acima são
para mostrar que em determinadas situações precisará de números diferentes. Aí
que entra as classificações dos tipos numéricos (Int, BigInt,Decimal, Money e
etc).
O importante agora é
identificar o que é um numérico. Geralmente utilizará um numérico quando
precisar de algum cálculo. Lembre-se da sua matéria preferida: a Matemática.
Em um campo numérico
precisará Somar, Multiplicar, Subtrair, Dividir, obter a Média e etc.
Por exemplo, você tem
dois produtos A e B. Você sabe que A tem 30 unidades e B 60 unidades. Quer
saber o total.
Figura 01.
Conforme a consulta
acima o total é 90.
“Po essa era fácil! Dava
para fazer de cabeça!”
É verdade. Agora imagine
que você tenha mil produtos diferentes e queira saber o total de unidades???
Aí começa a
complicar. Para ter uma noção das
quantidades de itens, imagine o Banco de Dados de uma grande rede de
Supermercados e como é feito o controle de estoque. Deve ter muito item.
Muitas vezes utilizam o
tipo numérico para códigos. Por exemplo, em vez de produto A teríamos produto
101.
Os tipos numéricos no
SQL Server são:
- Bigint
- Bit
- Decimal
- Int
- Money
- Numeric
- Smallint
- Smallmoney
- Tinyint
- Float
2- Tipo
String ou Cadeia de Caracteres
E se voce necessitar guardar além dos
valores dos produtos, o nome do mesmo? Por exemplo, o produto "Chá
gelado", custa R$10,00. Ou imagine um cadastro de empregados, voce deverá
guardar o nome desse funcionário, por exemplo, "Rodrigo".
Esse tipo de dados é denominado
String, texto ou Cadeia de Caracteres. Para reconhecer um tipo texto no SQL
Server deve-se utilizar o apóstrofo, tambem conhecido no meio como "aspas
simples" [']. Seu texto deve estar entre aspas simples, conforme exemplo:
'Exemplo'.
Se não utilizar as aspas
simples o SQL Server interpretará seu texto como um comando e provavelmente
dará erro.
Figura 02.
Utilizando a aspas
simples o SQL Server reconhece como texto:
Figura 03.
Bem, então tipos de
texto são as letras (O alfabeto) de A a Z?
Vai um pouco mais além,
por exemplo, podemos ter espaço entre nome e sobrenome, conter caracteres
especiais como o @ nos e-mail's, acentuação de palavras e frases, traços e etc.
Figura 04.
E se tiver a necessidade
de guardar números com letras, como por exemplo as placas de carro?
Ou acumular números que
não são calculados, como por exemplo telefones e R.G?
Deve-se usar os tipos de
texto para esses casos, utilizando os números dentro da String.
Figura 05.
Muitos códigos misturam
letras e números em alguns sistemas.
Os tipos de texto no SQL
Server são:
- char
- varchar
- text
- nchar
- nvarchar
- ntext
Há outros tipos, como
por exemplo, datas, binários e até XML.
É importante conhecer os
tipos de dados de um banco, pois eles são de extrema importância, desde a
modelagem até a aplicação do Banco em produção. Por exemplo, bancos com tipos
de dados mal modelados podem apresentar problemas de desempenho, como lentidão das
consultas. Podem apresentar também dados incompletos ou truncados, gerando
re-trabalho na parte de modelagem lógica e física do banco.
Para quem quer saber
mais sobre o tema, tem o link ao final do post, específico para SQL Server.
Obrigado.
Nenhum comentário:
Postar um comentário