Buscar

Tipos de Dados - MySQL x SQLServer

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 5 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Instituto Federal de Educação, Ciência e Tecnologia do 
Espírito Santo – IFES. Campus Colatina 
 
André Parpaiola e Thalyson Cordeiro, turma V02 
 
TIPOS DE DADOS DO MySQL 
Terminada a fase de análise da base de dados é necessário começar a desenhar as tabelas e seus atributos no 
banco de dados, para então armazenar os dados coletados. Os tipos de dados utilizados no MySQL seguem 
abaixo: 
 
TIPOS NUMÉRICOS 
O MySQL suporta todos os tipos numéricos da linguagem de consulta ANSI/ISO SQL-92. Juntando todas as 
extensões da SQL-92, o MySQL possui todos os tipos numéricos possíveis: exatos, aproximados, inteiros, de 
ponto fixo, ponto flutuante, dentre outros. Confira abaixo os tipos de dados possíveis: 
o TINYINT - Um inteiro muito pequeno; 
o SMALLINT - Um inteiro pequeno; 
o MEDIUMINT - Um inteiro de tamanho mediano; 
o INT ou INTEGER - Um inteiro de tamanho normal; 
o BIGINT - Um inteiro de tamanho grande; 
o FLOAT - Um pequeno número de ponto flutuante (precisão simples); 
o DOUBLE, DOUBLE PRECISION, REAL - Um número de ponto flutuante de tamanho normal 
(precisão dupla); 
o DECIMAL, NUMERIC - Um número de ponto flutuante descompactado. 
 
CAMPOS DE DATAS 
Existem várias opções para armazenar dados relacionados a data e hora, tudo para acompanhar ou marcar 
mudanças ocorridas em um campo de uma tabela. Veja abaixo os tipos: 
o DATE – Data; 
o DATETIME – Data e horário; 
o TIMESTAMP – Timestamp; 
o TIME – A time; 
o YEAR - Anos com 2 ou 4 digitos. O padrão é 4 digitos. 
 
CAMPOS DE TEXTO 
Os textos (strings) são cadeias de caracteres. No MySQL, uma string pode ter qualquer conteúdo, desde textos 
simples até dados binários. Confira a seguir: 
o CHAR - String de tamanho fixo. Sempre é completada com espaços a direita até o tamanho definido; 
o VARCHAR - String de tamanho variável; 
o TINYTEXT - String de tamanho variável; 
o TEXT - String de tamanho variável; 
o MEDIUMTEXT - String de tamanho variável; 
o LONGTEXT - String de tamanho variável. 
 
DADOS BINÁRIOS 
Tipo de dados utilizado para armazenar dados binários, seja qual for seu tamanho. 
o TINYBLOB; 
o BLOB; 
o MEDIUMBLOB; 
o LONGBLOB. 
 
LISTAS 
o ENUM – Enumeração; 
o SET – Lista. 
 
A seguir, veja a lista dos tipos de dados na linguagem SQL: 
o CHARACTER – Caracter de string; 
o VARCHAR ou CHARACTER VARYING - String de tamanho variável; 
o BINARY – String de número binário; 
o BOOLEAN – Armazena valores VERDADEIRO ou FALSO; 
o VARBINARY ou BINARY VARYING - String de números binários; 
o INTEGER – Número inteiro; 
o SMALLINT - Número inteiro; 
o INTEGER - Número inteiro; 
o BIGINT - Número inteiro; 
o DECIMAL – Número exato; 
o NUMERIC - Número exato; 
o FLOAT – Número aproximado, com ponto flutuante; 
o REAL – Número aproximado; 
o DOUBLE PRECISION - Número aproximado; 
o DATE – Campo de data; 
o TIME – Campo de tempo; 
o TIMESTAMP - Campo de tempo; 
o INTERVAL - Campo de tempo; 
o ARRAY – Um conjunto ou coleção ordenada por elementos; 
o MULTISET - Um conjunto ou coleção desordenada por elementos; 
o XML – Armazena dados XML. 
 
 
CARACTERES E COLLATIONS QUE O MYSQL SUPORTA 
 
Um conjunto de caracters é um conjunto de símbolos e códigos. Uma collation é um conjunto de regras 
para comparação de caracteres em um conjunto de caracteres. Vamos deixar a distinção clara com um 
exemplo de um conjunto de caracteres imaginário. 
Suponha que temos um alfabeto com quatro letras: ‘A’, ‘B’, ‘a’, ‘b’. Damos um número a cada letra: ‘A’ = 0, 
‘B’ = 1, ‘a’ = 2, ‘c’ = 3. A letra ‘A’ é o símbolo, o número 0 é o código para ‘A’, e a combinação de todas as 
quatro letra e seus códigos é um conjunto de caracteres. 
Agora suponha que desejamos comparar duas strings, ‘A’ e ‘B’. O modo mais simples de se fazer isto é olhar 
o código --- 0 para ‘A’ e 1 para ‘B’ --- e como 0 é menor que 1, dezemos que ‘A’ é menor que ‘B’. Agora, o 
que fizemos foi apenas aplicar um collation a nosso conjunto de caracteres. A collation é um conjunto de regras 
(apenas uma regra neste caso): ``compara os códigos''. 
Na vida real, a maioria dos conjuntos de caracteres possuem muitos caracteres: não apenas ‘A’ e ‘B’ mas todo 
o alfabeto, algumas vezes alfabetos múltiplos ou sistemas de escritas ocidentais com milhares de caracteres, 
junto com muitos símbolos especiais e sinais de pontuação. Em geral as collations também possuem diversas 
regras: não apenas caso insensitivo mas acentos insensitivos e mapeamento de múltiplos caracteres (como a 
regra de que ‘Ö’ = 'OE' em uma das duas collations alemãs). 
O MySQL pode fazer as seguintes coisas para você: 
 Armazena a string usando uma variedade de conjunto de caracteres; 
 Compara strings usando uma variedade de collations; 
 Mistura strings com diferentes conjuntos de caracteres ou collations no mesmo servidor, o mesmo 
banco de dados ou a mesma tabela; 
 Permite a especificação de conjunto de caracteres e collations em qualquer nível. 
O MySQL suporta mais de 70 collations e mais de 30 conjuntos de caracteres. Dentre eles: 
 
 O Conjunto de Caracteres Unicode; 
 Conjunto de Caracteres para Plataformas Específicas; 
 Conjunto de Caracteres do Sul da Europa e Oriente Médio; 
 Os Conjuntos de Caracteres Asiáticos; 
 Os Conjuntos de Caracteres Bálticos; 
 Os Conjuntos de Caracteres Cirílicos; 
 O Conjunto de Caracteres da Europa Centra; 
 e Os Conjuntos de Caracteres da Europa Ocidental. 
 
 
 
TIPOS E TRATAMENTO DE CAMPOS DE DATA E HORA 
 
Os tipos DATETIME, DATE, e TIMESTAMP são relacionados. Abaixo o trabalho irá falar de suas 
características, como eles se assemelham ou como se diferem. 
O tipo DATETIME é usado quando você precisa de valores que contém informações sobre data e a hora. 
MySQL recupera e mostra valores DATETIME no formato 'YYYY-MM-DD HH:MM:SS'. A faixa 
suportada é de '1000-01-01 00:00:00' até '9999-12-31 23:59:59'. (``Suportada'' significa que embora valores 
anteriores possam funcionar, não há nenhuma garantia.) 
O tipo DATA é usado quando se necessita apenas do valor da data, sem a parte da hora. MySQL recupera e 
mostra valores do tipo DATA no formato 'YYYY-MM-DD'. A faixa suportada é de '1000-01-01' até '9999-
12-31'. 
A coluna do tipo TIMESTAMP possui comportamento e propriedade variado, dependendo da versão do 
MySQL e do modo SQL que o servidor está executando. 
 
 
FUNÇÕES DE DATA E HORA NO COMANDO SELECT 
o CURDATE( ) - Retorna a data atual no formato aaaa-mm-dd; 
o CURTIME( ) - Retorna a hora atual no formato hh:mm:ss; 
o DATE_ADD (data, INTERVAL) - Adiciona um intervalo à data. A data pode ser uma data seguida 
de um horário. O intervalo a ser somado pode ser em dias, dias e horas e minutos, dias e segundos, 
minutos e segundos; 
o DATE_SUB (data, INTERVAL) - Subtrai um intervalo à data. A data pode ser uma data seguida de 
um horário. O intervalo a ser subtraído pode ser em dias, dias e horas e minutos, dias e segundos, 
minutos e segundos; 
o DATEDIFF (expre1,expre2) - Retorna o valor da diferença entre expre1 e expre2, podendo ambos 
ser uma data ou data e horário; 
o DATE_FORMAT(D, <formato>) - Retorna a data D no formato especificado; 
o DAYNAME(D) - Retorna o dia da semana para a data D; 
o DAYOFMONTH(D) - Retorna o dia do mês para a data D; 
o DAYOFWEEK(D) - Retorna o dia da semana em que a data D cai; 
o DAYOFYEAR(D) - Retorna o dia do ano para a data D; 
o FROM_DAYS(N) - Retorna a data real referente a um número N em dias; 
o NOW( ) - Retorna data e hora atuais; 
o PERIOD_DIFF(P1,P2) - Retorna o número de meses entre os dois períodos, que devem estar no 
formato AAMM ou AAAAMM; 
o QUARTER(D) - Retorna o trimestre do ano para a data D; 
o WEEK(D) - Retorna a semana doano para a data D; 
o WEEKDAY(D) - Retorna o dia da semana que inicia com segunda-feira para uma data D; 
o YEAR(D) -Retorna o ano de uma data D; 
o MONTH(D) -Retorna o mês de uma data D; 
o DAY(D) -Retorna o dia de uma data D. 
 
PERGUNTAS 
1. Qual o conjunto de caracteres mais utilizados na atualidade’ 
Podemos considerar o conjunto de caracteres UTF-8, pode representar qualquer carácter universal 
padrão do Unicode, sendo também compatível com o ASCII. O UTF-8 reúne o melhor de dois 
mundos: a eficiência do ASCII e o âmbito do Unicode. Aliás, o UTF-8 foi adotado como um padrão 
para codificação de arquivos XML. A maioria dos navegadores atuais também suportam o UTF-8 e 
o detectam, automaticamente, nas páginas HTML. Está se tornando uma codificação padrão para e-
mail, páginas web, e outros locais onde os caracteres são armazenados. 
 
2. Qual a importância de utilizar o tipo de dado certo? 
Para cada atributo criado é preciso determinar o tipo de dado que será armazenado para poder ajustar 
a estrutura da base de dados e conseguir um armazenamento com a menor utilização de espaço 
possível. Saber como definir os tipos de dados em colunas de tabelas é algo crucial para uma futura 
aplicação funcionar sem "engasgos" e com ótima performance. 
 
 
REFERÊNCIAS 
 
Manual MySql, página 526 – 9.1 Os conjuntos de Caracteres e Collations que o MySQL Suporta; 
 
Os Tipos DATETIME, DATE e TIMESTAMP; 
http://ftp.nchu.edu.tw/MySQL/doc/refman/4.1/pt/datetime.html 
 
Função Data e Hora em MySql – Portal da Educação; 
http://www.portaleducacao.com.br/informatica/artigos/7408/funcao-data-e-hora-em-mysql 
 
http://help.scibit.com/Mascon/masconMySQL_Field_Types.html 
 
http://dev.mysql.com/doc/refman/5.0/en/data-type-overview.html

Continue navegando

Outros materiais