La
manera más simple de crear una vista usando
MySQL, es con el uso del botón CREAR VISTA, lo primero que debe hacer es;
Ejecutar una consulta que represente la vista
que desee crear. Una vez que la consulta es ejecutada, clic en el botón CREAR
VISTA, proporcione el nombre para la vista, y la vista es creada.
CREANDO
UNA VISTA: Se emplea la
sentencia CREATE VIEW,
que incluye una
subconsulta (subquery) para determinar los datos a ser mostrados a
través de la vista.
Sintaxis:
CREATE [OR REPLACE] [FORCE | NOFORCE] VIEW
<vista>
[(<alias>[, <alias>] … )]
AS
<subconsulta>
[WITH CHECK OPTION [CONSTRAINT <restricción>]]
[WITH READ ONLY
[CONSTRAINT <restricción>]];
Ejemplo: Crear una
vista que contiene
los apellidos y
nombre de los
empleados del departamento “Ventas”. Asegurarse que a
través de ella sólo pueden modificarse, eliminarse o añadirse los empleados de
dicho departamento.
CREATE VIEW EmpDepVentas
AS SELECT apellidos, nombre
FROM Empleados
WHERE dep=”Ventas”
WITH CHECK OPTION;
COMO VISUALIZAR LA ESTRUCTURA DE UNA VISTA:
DESCRIBE
<vista>;
donde: <vista> Es el nombre de la vista.
Listar
las vistas existentes: SELECT * FROM USER_VIEWS;
INDICACIONES
Y RESTRICCIONES DE USO:
-La
subconsulta puede contener una sentencia SELECT de sintaxis compleja,
incluyendo combinaciones (JOIN), agrupamientos (GROUP BY), y subconsultas
internas.
- Pero no puede incluir una cláusula ORDER BY.
Si se desea ordenar, esto deberá hacerse mediante una consulta posterior que
utilice la vista .
MODIFICANDO LA DEFINICIÓN DE
UNA VISTA
Para
modificar la definición de una vista no es necesario eliminarla previamente,
basta con ejecutar una nueva sentencia CREATE VIEW que incluya la opción “OR
REPLACE” y la subconsulta modificada.
Ejemplo: Cambiar la vista EmpDepVentas
creada en el apartado 3 para que incluya también el salario
CREATE OR REPLACE VIEW EmpDepVentas
AS SELECT apellidos, nombre, salario
FROM Empleados
WHERE
dep=”Ventas”
WITH CHECK
OPTION;
ELIMINANDO UNA VISTA
Cuando
ya no se va a emplear más, una vista puede ser eliminada del esquema de la base
de datos mediante la siguiente orden:
DROP
VIEW <vista>;
dónde: <vista> Es el nombre de la vista.
Ejemplo:
DROP VIEW EmpDepVentas;
Restricciones
de uso: Solo el creador
o un usuario
con el privilegio
“DROP ANY VIEW” puede eliminar
una vista.
COMANDOS MYSQL.
Comenzaremos
de los más sencillos a los más complejos.
mysql> show databases;
mysql> show tables;
mysql> show columns from nombre_de_tabla;
mysql> show variables;
mysql> show grants for usuario@host;
mysql>
show columns from base_de_datos.nombre_de_tabla;
mysql> show privileges;
mysql> show character set;
mysql>
describe nombre_de_tabla
Definición de datos:
mysql>
drop database nombre_de_base_de_datos;
mysql>
drop table nombre_de_tabla;
mysql>
alter table nombre_de_tabla drop column nombre_de_columna;
mysql>
alter table nombre_de_tabla add column nombre_de_columna tipo_de_dato;
mysql>
alter table nombre_de_tabla change nombre_de_columna_originalnombre_de_columna_nuevo
tipo_de_dato;
mysql>
alter table nombre_de_tabla add unique (nombre_de_columna);
mysql>
alter table nombre_de_tabla modify nombre_de_columna tipo_de_dato;
MANEJO DE BASES DE DATOS MYSQL:
drop
table [table]; – Elimina la tabla, incluyendo registros y estructura.
drop
table if exists [table]; – Elimina la tabla de la base de datos, pero antes
verifica que exista.
truncate
table [table]; – Elimina los registros, pero mantiene la estructura de la
tabla.
rename
table [table] to [nuevo nombre de tabla]; – Renombra una tabla de la base de
datos.
ALGUNOS COMANDOS UTILES PARA
CUNSULTAS MYSQL:
select
* from [table] limit [numero]; – Muestra los registros desde el 1 hasta
[numero].
Ej.
select * from tabla limit 10; – Muestra los 10 primeros registros.
select
* from [table] limit [numero inicio],[numero]; – Muestra los registros desde el
numero de inicio hasta numero inicio + numero.
Ej.
select * from tabla limit 11,10; – Muestra desde registro 11 hasta el 20.
BASES DE DATOS MYSQL EN
CONSOLA:
$
mysqladmin -u -p create – crear base de datos.
$
mysqladmin -u -p drop – borrar la base de datos.
$
mysqladmin -u root -p proc – listar procesos en ejecucion en el servidor de
bases de datos Mysql.
$
mysqladmin -u root -p -i 5 status – verificar status cada 5 segundos.
$ mysqldump –opt -u -h -p > /path/to/file –
Exportar base de datos a un archivo.$ mysqldump –opt -u -h –all-databases -p
> /path/to/file – Exportar TODAS las bases de datos a un archivo.
$
mysql -h -u -p < /path/to/file – Importar un archivo a la base de datos a
mysql
$
mysqlcheck -o -u root -p –all-databases – Optimizar las bases de datos mysql.
VERIFICACION Y REPARACION DE
BASES DE DATOS ERRONEAS:
check
table [table]; – Verificar la tabla.
repair
table [table]; – Reparar la tabla
No hay comentarios:
Publicar un comentario