O documento descreve os tipos de dados suportados pelo MySQL, incluindo tipos numéricos, de data e hora, e strings. Ele explica as categorias de tipos de dados, requisitos de armazenamento, e como escolher o tipo correto para cada coluna para armazenamento eficiente. O documento também compara os tipos de dados do MySQL com outros sistemas como o MS Access.
2. Tipos de dados em MySQL
MySQL suporta um certo números de tipos de
campos que podem ser agrupados em três
categorias: tipos numéricos, tipos de data e hora, e
tipos string (caracteres). Desta maneira, teremos
uma visão geral dos tipos disponíveis. Resumiremos
as exigências de armazenamento em cada tipo de
coluna, também fornecendo uma descrição mais
detalhada da propriedade dos tipos em cada
categoria. A visão dada é propositalmente breve. As
descrições mais detalhadas devem ser consultadas
para informações adicionais sobre tipos de campo
particulares como os formatos permitidos nos quais
você pode especificar valores.
3. Tipos de dados em MySQL
Uma das formas mais fáceis de entender os
tipos de dados, é observar atentamente a
descrição para cada tipo de dados, e
também, comparar os mesmos, por exemplo
com o MS Access, uma vez que estes serão
comuns para a maior parte dos
programadores.
4. Desta forma, teremos os seguintes tipos de
dados no Microsoft Access :
5. No MySQL temos os seguintes
tipos e sub-tipos de dados:
Tipo Strings
8. Escolhendo o Tipo Correto
para uma Coluna
Para um uso mais eficiente do armazenamento, tente
usar o tipo mais adequado em todos os casos. Por
exemplo, se um campo de inteiro for usado para valores
em uma faixa entre 1 e 99999, MEDIUMINT
UNSIGNED é o melhor tipo.
Representação precisa de valores monetários é um
problema comum. No MySQL você deve usar o
tipo DECIMAL. Ele armazena uma string, então nenhuma
perda de precisão deve ocorrer. Se a precisão não é tão
importante, o tipo DOUBLE pode ser satisfatório.
Para uma alta precisão você sempre pode converter para
um tipo de ponto fixo armazenado em um BIGINT. Isto
permite fazer todos os cálculos com inteiros e converter o
resultado para um ponto flutuante somente quando
necessário.
9. Usando Tipos de Colunas de
Outros Mecanismos de Banco de
Dados
Para facilitar o uso de code para
implementações SQL de outras
empresas, MySQL mapeia os tipos de
campos como mostrado na tabela
seguinte. Este mapeamento torna fácil
mudar definições de tabelas de outros
mecanismos de banco de dados para o
MySQL:
10. Tipo de outras empresas Tipo MySQL
BINARY(NUM) CHAR(NUM) BINARY
CHAR VARYING(NUM) VARCHAR(NUM)
FLOAT4 FLOAT
FLOAT8 DOUBLE
INT1 TINYINT
INT2 SMALLINT
INT3 MEDIUMINT
INT4 INT
INT8 BIGINT
LONG VARBINARY MEDIUMBLOB
LONG VARCHAR MEDIUMTEXT
MIDDLEINT MEDIUMINT
VARBINARY(NUM) VARCHAR(NUM) BINARY
11. Conclusão
Como podemos concluir, o MySQL possui mais
opções de tipos de dados do que o MS Access.
Essa característica, associada à rapidez do MySQL,
faz com que ele seja uma das bases de dados mais
recomendadas para sites web.
É bom lembrar que o MS Access não é uma base de
dados que a Microsoft indica para aplicações de
grande porte (nesse caso compra-se o MS SQL
Server). O Access foi utilizado como comparação,
por ser bastante conhecido e usado na gestão de
pequenas e médias aplicações (web ou não) que
necessitem de gerir informação.