Está en la página 1de 3

Universidad Nacional

de Trujillo

Facultad de Ingeniera
Escuela Acadmico Profesional de Ingeniera de Sistemas

Tipos de datos

Despus de la fase de diseo de una base de datos, y una vez


se ha realizado el paso a tablas del mismo, es necesario crear
las tablas correspondientes dentro de la base de datos.

Para cada columna de cada una de las tablas, es necesario


determinar su tipo de dato, para de esa forma ajustar el diseo
de la base de datos, y conseguir un almacenamiento ptimo
con la menor utilizacin de espacio.

Los tipos de datos que puede tener una columna en MySQL se


agrupan en tres grandes categoras: tipos numricos, tipos
fecha y tipos de cadena.

Consultas en MySQL

Curso: Tecnologa de la Programacin II.


Docente: Mg. Zoraida Yanet Vidal Melgarejo.
CLASE 5

Tipos de Datos

Tipos de datos
TinyInt
Bit, Bool

Tipos fecha: a la hora de


almacenar fechas, hay que
tener en cuenta que
MySQL no comprueba de
una manera estricta si una
fecha es vlida o no.
Simplemente
comprueba
que
el
mes
est
comprendido entre 0 y 12
y que el da est
comprendido entre 0 y 31

Tipos numricos: existen


tipos de datos numricos,
que se pueden dividir en
dos grandes grupos, los que
estn en coma flotante (con
decimales) y los que no.

Tipos de cadena: que


incluye tanto cadenas de
longitud fija como de
longitud variable.

Numricos:

SmallInt
MediumInt
Integer, Int
BigInt
Float
xReal, Double
Decimal, Dec, Numeric

Tipos de datos

Tamao de la
columna segn
el tipo de dato:

Tipos de datos
Tamao de almacenamiento

TINYINT

1 byte

SMALLINT

2 bytes

MEDIUMINT

3 bytes

INT

4 bytes

INTEGER

4 bytes

BIGINT
FLOAT(X)

8 bytes
4 u 8 bytes

FLOAT

4 bytes

DOUBLE

8 bytes

DOUBLE
PRECISION

8 bytes

REAL

8 bytes

DECIMAL(M,D)

M+2 bytes si D>0; M+1bytes si D=0

NUMERIC(M,D)

M+2 bytes si D>0; M+1bytes si D=0

Curso: Tecnologa de la Programacin II


Docente: Mg. Zoraida Yanet Vidal Melgarejo

Date
DateTime

Fecha:

Tipo de campo

TimeStamp
Time
Year

Tema: Consultas en MySQL


Pgina 1

Universidad Nacional
de Trujillo

Tipos de datos

Facultad de Ingeniera
Escuela Acadmico Profesional de Ingeniera de Sistemas

Tipos de datos

Tamao de la columna segn el tipo de dato:


Char(n)
Tipo de campo

Tamao de almacenamiento
3 bytes

VarChar(n)

DATETIME

8 bytes

TinyText y TinyBlob

TIMESTAMP

4 bytes

TIME

3 bytes

YEAR

1 byte

Cadena:

DATE

Blob y Text
MediumBlob y MediumText
LongBlob y LongText
Enum

Tipos de datos

Tipos de datos

Tamao de la columna segn el tipo de dato:


Tipo de campo

Diferencia de almacenamiento entre los tipos Char y VarChar:

Tamao de almacenamiento
n bytes

Valor

n + 1 bytes

Tamao

VARCHAR(4)

4 bytes

TINYBLOB, TINYTEXT

Longitud + 1 bytes

1 byte

ab

ab

4 bytes

ab

3 bytes

BLOB, TEXT
MEDIUMBLOB, MEDIUMTEXT

Longitud + 2 bytes

abcd

abcd

4 bytes

abcd

5 bytes

Longitud + 3 bytes

abcedfgh

abcd

4 bytes

abcd

LONGBLOB, LONGTEXT

Longitud + 4 bytes

5 bytes

CHAR(n)
VARCHAR(n)

ENUM(value1,value2, )
SET(value1,value2, )

CHAR(4)

Tamao

1 o dos bytes dependiendo del nmero de valores


1, 2, 3, 4 o 8 bytes, dependiendo del nmero de valores

Tipos de tablas en MySQL

Tipos de tablas en MySQL

MySQL soporta varios tipos de tablas cuyas caractersticas se


describen a continuacin:

MYISAM:

ISAM:
Es el formato de almacenamiento ms antiguo y posiblemente
pronto desaparecer. Presentaba limitaciones (los archivos no
eran transportables entre mquinas con distinta arquitectura,
no poda manejar archivos de tablas superiores a 4 Gb).

HEAP:

Curso: Tecnologa de la Programacin II


Docente: Mg. Zoraida Yanet Vidal Melgarejo

Es el tipo de tabla por defecto en MySQL desde la versin 3.23,


Optimizada para sistemas operativos de 64 bits, permite archivos de
mayor tamao que ISAM. Adems los datos se almacenan en un
formato independiente, con lo que se pueden copiar tablas de una
mquina a otra de distinta plataforma. Posibilidad de indexar campos
BLOB y TEXT.

Crea tablas en memoria. Son temporales y desaparecen cuando el


servidor se cierra; a diferencia de una tabla TEMPORARY, que slo
puede ser accedida por el usuario que la crea, una tabla HEAP puede
ser utilizada por diversos usuarios.

Tema: Consultas en MySQL


Pgina 2

Universidad Nacional
de Trujillo

Facultad de Ingeniera
Escuela Acadmico Profesional de Ingeniera de Sistemas

Tipos de tablas en MySQL

Tipos de tablas en MySQL

BDB:

Con MySQL se puede variar el tipo de tabla despus de


haberla creada.

TST se refiere a Transactions safe tables o tablas para


transacciones seguras. A este tipo pertenecen BDB y
INNODB.
Las tablas TST son menos rpidas y ocupan ms memoria, pero
a cambio ofrecen mayor seguridad frente a fallos durante la
consulta.
Las tablas TST permiten ir ejecutando instrucciones y finalizar
con un COMMIT (confirma los cambios) o ROLLBACK
(cancela los cambios).

Base de datos Berkeley.TST. Slo en MySQL MAX.

INNODB:

TST, ACID, con posibilidad de commit, rollback, recuperacin de


errores y bloqueo a nivel de fila.

MERGE:

Ms que un tipo de tabla es la posibilidad de dividir tablas MYISAM


de gran tamao (slo til si son verdaderamente de GRAN tamao)
y hacer consultas sobre todas ellas con mayor rapidez. Las tablas
deben ser MYISAM e idnticas en su estructura.

Tipos de tablas en MySQL

ACID es un acrnimo de atomicidad, coherencia, aislamiento


(isolation) y durabilidad.
Por atomicidad se entiende que una transaccin no es divisible,
o sea, que deben ejecutarse todas las instrucciones de una
transaccin como una unidad lgica de trabajo e indivisible, en
caso de que alguna falle no se ejecuta ninguna.

Tipos de tablas en MySQL


Por aislamiento se entiende que las transacciones que tengan
lugar simultneamente deben ejecutarse aisladas unas de otras
hasta que finalizan.
Y durabilidad, la garanta de que una transaccin una vez
confirmada no podr ser deshecha.

Coherencia significa que slo datos vlidos pueden ser grabados


en la base de datos. Si se ejecuta una transaccin que
compromete la coherencia interna de la base de datos, toda la
transaccin debe cancelarse.

Curso: Tecnologa de la Programacin II


Docente: Mg. Zoraida Yanet Vidal Melgarejo

Tema: Consultas en MySQL


Pgina 3

También podría gustarte