Vous êtes sur la page 1sur 12

Una tabla es un sistema de elementos de datos (atributo - valores) que se organizan

que usando un modelo vertical - columnas (que son identificados por su nombre)- y
horizontal filas. Una tabla tiene un número específico de columnas, pero puede tener
cualquier número de filas. Cada fila es identificada por los valores que aparecen en
un subconjunto particular de la columna que se ha identificado por una llave
primaria.

Una tabla de una base de datos es similar en apariencia a una hoja de cálculo, en
cuanto a que los datos se almacenan en filas y columnas. Como consecuencia,
normalmente es bastante fácil importar una hoja de cálculo en una tabla de una
base de datos. La principal diferencia entre almacenar los datos en una hoja de
cálculo y hacerlo en una base de datos es la forma de organizarse los datos.

Por lo tanto, las creaciones de las tablas en el proceso de programación en Oracle


juegan un papel muy importante. En el momento de crear las tablas se definen
características a dos niveles: Tabla y Columna.

 A nivel de tabla: Refieren a una o a varias columnas, donde cada columna


se define individualmente.
 A nivel de Columna el nombre de la columna puede tener un máximo de 30
caracteres.

Del examen de la sintaxis de la sentencia CreateTable se pueden concluir que


necesitamos conocer los distintos tipos de columna y las distintas restricciones que
se pueden imponer al contenido de las columnas.

Existen varios tipos de datos en SQL. De esta manera, cada columna puede
albergar una información de naturaleza distinta.

Ejemplo de lo mencionado anterior mente es la siguiente sintaxis:

CREATE TABLE f1 (year INTEGER PRIMARY KEY, campeón CHAR (30),


Escudería CHAR (20));

Tablas Temporales

Oracle permite la creación de tablas temporales para mantener datos propios y


exclusivos a una sesión Oracle determinada. Estos datos permanecerán en el
sistema sólo durante el tiempo que dure la transacción o sesión involucrada. No
obstante, al igual que para las tablas permanentes, la definición de las tablas
temporales se almacena en las tablas del sistema.

La siguiente sintaxis permite crear una tabla temporal personal para cada sesión.
Eso significa que los datos no se comparten entre sesiones y se eliminan al final de
la misma.

CREATEGLOBAL TEMPORARYTABLE [ schema. ]table (

nombreColumnatipoDato [DEFAULT expresión] [NOT NULL],

[, nombre_columnatipo_dato [DEFAULT expresión]

[restricción columna] ... |restricción tabla]; ON COMMIT {DELETE| PRESERVE}


ROWS [ physical_properties]

Con la opción ON COMMIT DELETE ROWS se borran los datos cada vez que se
hace COMMIT en la sesión.

Con la opción ON PRESERVE DELETE ROWS los datos no se borran hasta el final
de la sesión.

Sus ventajas son varias, la información contenida en ella esta solo disponible para
la sesión actual, cualquier inserción, borrado, actualización solo se refleja en la
sesión activa.
Muchas funcionalidades de cualquier tabla normal se mantienen en ella, como
triggers a nivel tabla, vistas, índices, exportar e importar (claro solo la definición de
la tabla).

No es posible declarar llaves foráneas en una tabla temporal.

MySQL soporta varios motores de almacenamiento que tratan con distintos tipos de
tabla. Los motores de almacenamiento de MySQL incluyen algunos que tratan con
tablas transaccionales y otros que no lo hacen:

MyISAM trata tablas no transaccionales. Proporciona almacenamiento y


recuperación de datos rápida, así como posibilidad de búsquedas fulltext. MyISAM
se soporta en todas las configuraciones MySQL, y es el motor de almacenamiento
por defecto a no ser que tenga una configuración distinta a la que viene por defecto
con MySQL.

El motor de almacenamiento MEMORY proporciona tablas en memoria. El motor de


almacenamiento MERGE permite una colección de tablas MyISAM idénticas ser
tratadas como una simple tabla. Como MyISAM, los motores de almacenamiento
MEMORY y MERGE tratan tablas no transaccionales y ambos se incluyen en
MySQL por defecto.

Nota: El motor de almacenamiento MEMORY anteriormente se conocía como


HEAP.

Los motores de almacenamiento Innoble y BDB proporcionan tablas


transaccionales. BDB se incluye en la distribución binaria MySQL-Max en aquellos
sistemas operativos que la soportan. InnoDB también se incluye por defecto en
todas las distribuciones binarias de MySQL5.0. En distribuciones fuente, puede
activar o desactivar estos motores de almacenamiento configurando MySQL a su
gusto.

El motor de almacenamiento EXAMPLE es un motor de almacenamiento 'tonto' que


no hace nada. Puede crear tablas con este motor, pero no puede almacenar datos
ni recuperarlos. El objetivo es que sirva como ejemplo en el código MySQL para
ilustrar cómo escribir un motor de almacenamiento. Como tal, su interés primario es
para desarrolladores.

NDB Cluster es el motor de almacenamiento usado por MySQL Cluster para


implementar tablas que se particional en varias máquinas. Está disponible en
distribuciones binarias MySQL-Max 5.0. Este motor de almacenamiento está
disponible para Linux, Solaris, y Mac OS X. Los autores mencionan que se añadirá
soporte para este motor de almacenamiento en otras plataformas, incluyendo
Windows en próximas versiones.

El motor de almacenamiento ARCHIVE se usa para guardar grandes cantidades de


datos sin índices con una huella muy pequeña.

El motor de almacenamiento CSV guarda datos en archivos de texto usando formato


de valores separados por comas.

El motor de almacenamiento FEDERATED se añadió en MySQL 5.0.3. Este motor


guarda datos en una base de datos remota. En esta versión sólo funciona con
MySQL a través de la API MySQL C Client. En futuras versiones, será capaz de
conectar con otras fuentes de datos usando otros drivers o métodos de conexión
clientes.

La versión 5 de MySQL crea por defecto tablas innoDB que permiten el manejo de
integridad referencial, transacciones. Al igual que las tablas regulares de oracle.
Para saber si el gestor de base de datos de MySQL que tenemos las soporta es
necesario ejecutar la siguiente sentencia.

SHOW VARIABLES liKE '%innodb%';

Si nuestro gestor soporta por defecto las tablas innodb las sentencias para crear las
tablas previamente mostradas serán exactamente igual a las de oracle. En caso
contrario se muestra la sintaxis correspondiente
CREATE TABLE f1 (yearINTEGER PRIMARY KEY, campeonCHAR (30),

escuderiaCHAR (20)) ENGINE = InnoDB;

Ejemplo: Estados, capitales, densidad de población y superficie de la República


Mexicana

CREATE TABLE estados (idEstadoINTEGER PRIMARY KEY, nombreEstadoCHAR


(25) NOT NULL, capitalCHAR (25) NOT NULL, densidadINTEGER NOT NULL,
poblacionINTEGER NOT NULL) ENGINE = InnoDB;

Comandos que se describen en MYSql

Comando Describe

MySQL proporciona este comando que resulta útil para conocer la estructura de
una tabla, las columnas que la forman y su tipo y restricciones. La sintaxis es la
siguiente DESCRIBE nombre Tabla.

DESCRIBE f1;

Comando SHOW TABLES y SHOW CREATE TABLE

El comando SHOW TABLES muestra las tablas dentro de una base de datos y
SHOW CREATE TABLES muestra la estructura de creación de la tabla.

Tablas temporales

Las tablas temporales solo existen mientras la sesión está viva. Si se corre este
código en un script de PHP (Cualquier otro lenguaje), la tabla temporal se destruirá
automáticamente al término de la ejecución de la página. Si no específica
MEMORY, la tabla se guardará por defecto en el disco.
CREATE TEMPORARY TABLE temporal (

ifeINTEGER (13) PRIMARY KEY,

nombreCHAR (30) NOT NULL UNIQUE

);

 Este tipo de tabla solo puede ser usada por el usuario que la crea.
 Si creamos una tabla que tiene el mismo nombre que una existente en la
base de datos, la que existe quedará oculta y trabajaremos sobre la temporal.

Tablas Memory (Head)

Se almacenan en memoria

Una tabla head no puede tener más de 1600 campos

Las tablas MEMORY usan una longitud de registro fija.

MEMORY no soporta columnas BLOB o TEXT.

MEMORY en MySQL 5.0 incluye soporte para columnas AUTO_INCREMENT e


índices en columnas que contengan valores NULL.

Las tablas MEMORY se comparten entre todos los clientes (como cualquier otra
tabla no-TEMPORARY).

CREATE TEMPORARY TABLE temporal (

ifeINTEGER (13) PRIMARY KEY,

nombreCHAR (30) NOT NULL UNIQUE

) ENGINE = MEMORY;
Modificación

Esta operación se puede realizar con el comando ALTER TABLE. Para usar ALTER
TABLE, necesita permisos ALTER, INSERT y CREATE para la tabla. La sintaxis
para MySQL es

ALTER [IGNORE] TABLEtbl_name

alter_specification [, alter_specification] ...;

alter_specification:

ADD [COLUMN] column_definition [FIRST | AFTERcol_name ]

| ADD [COLUMN] (column_definition,...)

| ADD INDEX [index_name] [index_type] (index_col_name,...)

| ADD [CONSTRAINT [symbol]]

PRIMARY KEY [index_type] (index_col_name,...)

| ADD [CONSTRAINT [symbol]]

UNIQUE [index_name] [index_type] (index_col_name,...)

| ADD [FULLTEXT|SPATIAL] [index_name] (index_col_name,...)

| ADD [CONSTRAINT [symbol]]

FOREIGN KEY [index_name] (index_col_name,...)

[reference_definition]

| ALTER [COLUMN] col_name {SET DEFAULT literal | DROP DEFAULT}


| CHANGE [COLUMN] old_col_namecolumn_definition

[FIRST|AFTERcol_name]

| MODIFY [COLUMN] column_definition [FIRST | AFTERcol_name]

| DROP [COLUMN] col_name

| DROP PRIMARY KEY

| DROP INDEXindex_name

| DROP FOREIGN KEYfk_symbol

| DISABLE KEYS

| ENABLE KEYS

| RENAME [TO] new_tbl_name

| ORDER BYcol_name

| CONVERT TO CHARACTER SETcharset_name [COLLATEcollation_name]

| [DEFAULT] CHARACTER SETcharset_name [COLLATEcollation_name]

| DISCARD TABLESPACE

| IMPORT TABLESPACE

| table_options
Obtener información Manejo de la base de Comandos para Base de datos en consola Verificación y
sobre la base de datos consultas reparación de la base
datos de datos
 show  drop table  select * from  $ mysqladmin -u -  check table
p create – crear
databases; – [table]; – [table] limit [table]; –
base de datos.
Listar todas Elimina la [numero]; – Verificar la
 $ mysqladmin -u -
las bases de tabla, Muestra los p drop – borrar la
tabla.
datos. incluyendo registros desde base de datos.  repair table
[table]; –
 connect registros y el 1 hasta  $ mysqladmin -u
Reparar la
[database]; – estructura. [numero]. root -p proc – tabla rota.
listar procesos en
Conectarse a  drop table if  select * from
[table] limit ejecucion en el
esa base de exists [table]; –
[numero servidor de bases
datos. Elimina la tabla inicio],[numero] de datos Mysql.
; – Muestra los
 show tables; – de la base de
registros desde
 $ mysqladmin -u

datos, pero el número de root -p -i 5 status


Listar todas
inicio hasta – verificar status
las tablas de antes verifica
numero inicio + cada 5 segundos.
una base de que exista. numero.
 $ mysqldump –opt
datos.  rename table -u -h -p >
[table] to
 show table /path/to/file –
[nuevo nombre
de tabla]; – Exportar base de
status; –
Renombra una datos a un
Muestra
archivo.
informacion tabla de la  $ mysqldump –opt
base de datos -u -h –all-
sobre las
databases -p >
tablas de la
/path/to/file –
base de Exportar TODAS
datos. las bases de
 describe datos a un
[table]; – archivo.
Muestra la  $ mysql -h -u -p <
estructura de
una tabla de /path/to/file –
la base de Importar un
datos. archivo a la base
de datos a mysql
 $ mysqlcheck -o -
u root -p –all-
databases –
Optimizar las
bases de datos
mysql.
http://administracionbaseddatos.blogspot.com/2017/03/218-comandos-generales-
de-alta-y-baja.html?m=1

https://databaseandtech.wordpress.com/2008/05/06/comandos-basicos-para-
bases-de-datos-mysql/

Vous aimerez peut-être aussi