Criar Web, manuais e recursos para desenvolvimento web
Manuais
Programas
FAQS
Diretório
Comunidade
  Inicio > Manuais > Manual de MySQL
SEÇÕES
Manuais relacionados
+Manual de MySQL
Categorias
+MySQL

Índice do Manual Manual de MySQL
+ Instalação de MySQL em Windows
+ Tipos de dados de MySQL
+ Mysql Control Center
+ phpMyAdmin
+ Instalar o driver ODBC para conectar com uma base de dados MySQL
+ Exportar dados de MySQL a Microsoft Access
+ Exportar dados de Access a MySQL
+ Administrar e actualizar uma base de dados MySQL desde Access
+ Connector/J
+ Cópias de segurança em MySQL
+ Backup MySQL mediante sentenças SQL
+ Backup MySQL com mysqldump
+ Subir uma base de dados ao servidor de Internet
+ Subir uma base de dados MySQL vazia ao servidor
+ Subir uma base de dados MySQL com a estrutura e os dados
+ Migrar uma base de dados a MySQL
+ Como alterar tabelas MySQL
+ Verificação e correção de tabelas corrompidas no MySQL
+ Ferramentas Gráficas para Modelagem de Dados e Administração do MySQL
+ Criação de Database Links
+ Gerenciamento de Usuários e Controle de Acessos do MySQL
+ Trabalhando com os Vários Tipos de Tabelas do MySQL

Descrição dos capítulos

Parceiros
- CSS para Web Design
- S.O.S Designers
- Slackware-Brasil
- Crie seu Web site
- Oficina da Net


Tipos de dados de MySQL

Listado e descrição dos diferentes tipos de dados de MySQL.


Depois da fase de design da base de dados, e uma vez que se passou a tabelas, é necessário criar as tabelas correspondentes dentro da base de dados. Para cada campo de cada uma da tabelas, é necessário determinar o tipo de dados que contem, para poder ajustar a estrutura da base de dados, e conseguir um armazenamento com a menor utilização de espaço. Este artigo descreve cada um dos tipos de dados que se podem ter num campo MySQL, para a versão 4.xx.xx.

Os tipos de dados que pode ter um campo, podem-se agrupar em três grandes grupos:

  1. Tipos numéricos
  2. Tipos de Data
  3. Tipos de Cadeia
1 Tipos numéricos:

Existem tipos de dados numéricos, que se podem dividir em dois grandes grupos, os que estão em vírgula flutuante (com decimais) e os que não.

TinyInt: é um número inteiro com ou sem signo. Com signo a margem de valores válidos é desde -128 até 127. Sem signo, a margem de valores é de 0 até 255

Bit ou Bool: um número inteiro que pode ser 0 ou 1.

SmallInt: número inteiro com ou sem signo. Com signo a margem de valores válidos é desde -32768 até 32767. Sem signo, a margem de valores é de 0 até 65535.

MediumInt: número inteiro com ou sem signo. Com signo a margem de valores válidos é desde -8.388.608 até 8.388.607. Sem signo, a margem de valores é de 0 até 16777215.

Integer, Int: número inteiro com ou sem signo. Com signo a margem de valores válidos é desde -2147483648 até 2147483647. Sem signo, a margem de valores é de 0 até 429.496.295

BigInt: número inteiro com ou sem signo. Com signo a margem de valores válidos é desde -9.223.372.036.854.775.808 até 9.223.372.036.854.775.807. Sem signo, a margem de valores é de 0 até 18.446.744.073.709.551.615.

Float: número pequeno em vírgula flutuante de precisão simples. Os valores válidos vão desde -3.402823466E+38 até -1.175494351E-38,0 eté desde 175494351E-38 até 3.402823466E+38.

xReal, Double: número em vírgula flutuante de dupla precisão. Os valores permitidos vão desde -1.7976931348623157E+308 até -2.2250738585072014E-308, 0 e desde 2.2250738585072014E-308 até 1.7976931348623157E+308

Decimal, Dec, Numeric: Número em vírgula flutuante desempacotado. O número armazena-se como uma cadeia.

Tipo de CampoTamanho de Armazenamento
TINYINT1 byte
SMALLINT2 bytes
MEDIUMINT3 bytes
INT4 bytes
INTEGER4 bytes
BIGINT8 bytes
FLOAT(X)4 ou 8 bytes
FLOAT4 bytes
DOUBLE8 bytes
DOUBLE PRECISION8 bytes
REAL8 bytes
DECIMAL(M,D)M+2 bytes se D > 0, M+1 bytes se D = 0
NUMERIC(M,D)M+2 bytes se D > 0, M+1 bytes se D = 0

2 Tipos data:

Na hora de armazenar datas, há que ter em conta que MySQL não verifica de uma maneira estricta se uma data é válida ou não. Simplesmente comprova que o mês está compreendido entre 0 e 12 e que o dia está compreendido entre 0 e 31.

Date: tipo data, armazena uma data. A margem de valores vai desde o 1 de Janeiro de 1001 ao 31 de dezembro de 9999. O formato de armazenamento é de ano-mes-dia.

DateTime: Combinação de data e hora. A margem de valores vai desde o 1 ed Janeiro de 1001 às 0 horas, 0 minutos e 0 segundos ao 31 de Dezembro de 9999 às 23 horas, 59 minutos e 59 segundos. O formato de armazenamento é de ano-mes-dia horas:minutos:segundos

TimeStamp: Combinação de data e hora. A margem vai desde o 1 de Janeiro de 1970 ao ano 2037. O formato de armazenamento depende do tamanho do campo:

TamanhoFormato
14AnoMesDiaHoraMinutoSegundo aaaammddhhmmss
12AnoMesDiaHoraMinutoSegundo aammddhhmmss
8AnoMesDia aaaammdd
6AnoMesDia aammdd
4AnoMes aamm
2Ano aa

Time: armazena uma hora. A margem de horas vai desde -838 horas, 59 minutos e 59 segundos. O formato de armazenamento é 'HH:MM:SS'.

Year: armazena um ano. A margem de valores permitidos vai desde o ano 1901 ao ano 2155. O campo pode ter tamanho dois ou tamanho 4 dependendo de se queremos armazenar o ano com dois ou quatro algarismos.

Tipo de CampoTamanho de Armazenamento
DATE3 bytes
DATETIME8 bytes
TIMESTAMP4 bytes
TIME3 bytes
YEAR1 byte

3 Tipos de cadeia:

Char(n): armazena uma cadeia de longitude fixa. A cadeia poderá conter desde 0 até 255 caracteres.

VarChar(n): armazena uma cadeia de longitude variável. A cadeia poderá conter desde 0 até 255 caracteres. Dentro dos tipos de cadeia pode-se distinguir dois subtipos, os tipo Test e os tipo Blob (Binary Large Object) A diferença entre um tipo e outro é o tratamento que recebem na hora de ordená-los e compará-los. No tipo test ordena-se sem ter importância as maiúsculas e as minúsculas e no tipo blob ordena-se tendo em conta as maiúsculas e minúsculas.

Os tipos blob utilizam-se para armazenar dados binários como podem ser ficheiros.

TinyText e TinyBlob: Coluna com uma longitude máxima de 255 caracteres.

Blob e Text: um texto com um máximo de 65535 caracteres.

MediumBlob e MediumText: um texto com um máximo de 16.777.215 caracteres.

LongBlob e LongText: um texto com um máximo de caracteres 4.294.967.295. Há que ter em conta que devido aos protocolos de comunicação os pacotes podem ter um máximo de 16 Mb.

Enum: campo que pode ter um único valor de uma lista que se especifica. O tipo Enum aceita até 65535 valores diferentes.

Set: um campo que pode conter nenhum, um ou vários valores de uma lista. A lista pode ter um máximo de 64 valores.

Tipo de campoTamanho de Armazenamento
CHAR(n)n bytes
VARCHAR(n)n +1 bytes
TINYBLOB, TINYTEXTLongitude+1 bytes
BLOB, TEXTLongitude +2 bytes
MEDIUMBLOB, MEDIUMTEXTLongitude +3 bytes
LONGBLOB, LONGTEXTLongitude +4 bytes
ENUM('value1','value2',...)1 ó dos bytes dependendo do número de valores
SET('value1','value2',...)1, 2, 3, 4 ó 8 bytes, dependendo do número de valores

Diferença de armazenamento entre os tipos Char e VarChar
 
ValorCHAR(4)ArmazenamentoVARCHAR(4)Armazenamento
''''4 bytes "1 byte
'ab''ab '4 bytes'ab'3 bytes
'abcd''abcd'4 bytes'abcd' 
'abcdefgh''abcd'4 bytes'abcd'5 bytes

Autoria e outras referências sobre este artigo

Manuais relacionados com este artigo
Dentro de Manual de MySQL

Categorias relacionadas
Através das categorias do nosso diretório podem ser encontrados outros tipos de recursos relacionados com este artigo:
+ Entrar em MySQL


Comentário sem rever
Entre os comentários não revistos podem ter alguns interessantes que tenham sido enviado recentemente.
 Foram econtrados 3 comentários sem rever

VerVer os comentários não revistos



Sobre nós | Copyright | Anuncie | Entrar em contato <criarweb>

Hospedado por Hostnet Hospedagem de Sites