Universidad Nacional de Trujillo Facultad de Ingeniería Escuela Académico Profesional de Ingeniería de Sistemas Tipos
Views 81 Downloads 6 File size 294KB
Universidad Nacional de Trujillo
Facultad de Ingeniería Escuela Académico Profesional de Ingeniería de Sistemas
Tipos de datos
Después de la fase de diseño 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 diseño de la base de datos, y conseguir un almacenamiento óptimo con la menor utilización de espacio.
Los tipos de datos que puede tener una columna en MySQL se agrupan en tres grandes categorías: tipos numéricos, tipos fecha y tipos de cadena.
Consultas en MySQL
Curso: Tecnología de la Programación 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 válida o no. Simplemente comprueba que el mes está comprendido entre 0 y 12 y que el día está comprendido entre 0 y 31
Tipos numéricos: existen tipos de datos numéricos, que se pueden dividir en dos grandes grupos, los que están en coma flotante (con decimales) y los que no.
Tipos de cadena: que incluye tanto cadenas de longitud fija como de longitud variable.
Numéricos:
SmallInt MediumInt Integer, Int BigInt Float xReal, Double Decimal, Dec, Numeric
Tipos de datos
Tamaño de la columna según el tipo de dato:
Tipos de datos Tamaño 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: Tecnología de la Programación II Docente: Mg. Zoraida Yanet Vidal Melgarejo
Date DateTime
Fecha:
Tipo de campo
TimeStamp Time Year
Tema: Consultas en MySQL Página 1
Universidad Nacional de Trujillo
Tipos de datos
Facultad de Ingeniería Escuela Académico Profesional de Ingeniería de Sistemas
Tipos de datos
Tamaño de la columna según el tipo de dato: Char(n) Tipo de campo
Tamaño 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
Tamaño de la columna según el tipo de dato: Tipo de campo
Diferencia de almacenamiento entre los tipos Char y VarChar:
Tamaño de almacenamiento n bytes
Valor
n + 1 bytes
‘’
Tamaño
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) ‘
Tamaño
1 o dos bytes dependiendo del número de valores 1, 2, 3, 4 o 8 bytes, dependiendo del número de valores
Tipos de tablas en MySQL
Tipos de tablas en MySQL
MySQL soporta varios tipos de tablas cuyas características se describen a continuación:
MYISAM:
ISAM: Es el formato de almacenamiento más antiguo y posiblemente pronto desaparecerá. Presentaba limitaciones (los archivos no eran transportables entre máquinas con distinta arquitectura, no podía manejar archivos de tablas superiores a 4 Gb).
HEAP:
Curso: Tecnología de la Programación II Docente: Mg. Zoraida Yanet Vidal Melgarejo
Es el tipo de tabla por defecto en MySQL desde la versión 3.23, Optimizada para sistemas operativos de 64 bits, permite archivos de mayor tamaño que ISAM. Además los datos se almacenan en un formato independiente, con lo que se pueden copiar tablas de una máquina 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 sólo puede ser accedida por el usuario que la crea, una tabla HEAP puede ser utilizada por diversos usuarios.
Tema: Consultas en MySQL Página 2
Universidad Nacional de Trujillo
Facultad de Ingeniería Escuela Académico Profesional de Ingeniería de Sistemas
Tipos de tablas en MySQL
Tipos de tablas en MySQL
BDB:
Con MySQL se puede variar el tipo de tabla después 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 rápidas y ocupan más 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. Sólo en MySQL MAX.
INNODB:
TST, ACID, con posibilidad de commit, rollback, recuperación de errores y bloqueo a nivel de fila.
MERGE:
Más que un tipo de tabla es la posibilidad de dividir tablas MYISAM de gran tamaño (sólo útil si son verdaderamente de GRAN tamaño) y hacer consultas sobre todas ellas con mayor rapidez. Las tablas deben ser MYISAM e idénticas en su estructura.
Tipos de tablas en MySQL
ACID es un acrónimo de atomicidad, coherencia, aislamiento (isolation) y durabilidad. Por atomicidad se entiende que una transacción no es divisible, o sea, que deben ejecutarse todas las instrucciones de una transacción como una unidad lógica 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 simultáneamente deben ejecutarse aisladas unas de otras hasta que finalizan. Y durabilidad, la garantía de que una transacción una vez confirmada no podrá ser deshecha.
Coherencia significa que sólo datos válidos pueden ser grabados en la base de datos. Si se ejecuta una transacción que compromete la coherencia interna de la base de datos, toda la transacción debe cancelarse.
Curso: Tecnología de la Programación II Docente: Mg. Zoraida Yanet Vidal Melgarejo
Tema: Consultas en MySQL Página 3