UNIVERSIDAD NACIONAL DE LOJA Carrera de Ingeniería en Sistemas

Slides:



Advertisements
Presentaciones similares
Diseño de Bases de Datos
Advertisements

SQL Sigla del nombre “Structured Query Language”.
VISTAS (VIEWS) DEFINICIÓN Y OBJETIVO DE LAS VISTAS.
BASE DE DATOS OBJETO RELACIONAL
Implementación de funciones definidas por el usuario
Marzo de 2010Dos Ideas - La visión de Sistemas desde el Desarrollo Introducción a PL/SQL Conceptos básicos.
MySQL Elideth Uribe Mónica Paredes.
Por: Ronald Toscano Pretelt
INTRODUCCION AL SQL PROCEDURAL
Presentación Asignatura POF030 Semana 1. Contenido En forma general, los conceptos que se estudiarán en la asignatura son: – Procedures – Functions –
Maestría en Bioinformática Bases de Datos y Sistemas de Información Otros objetos de Base de Datos Ing. Alfonso Vicente, PMP
PL/SQL Francisco Moreno Universidad Nacional.
Sistema de gestión de las bases de datos (SGBD).
UNITA - IBARRA BLOQUES PL-SQL SUBPROGRAMAS Paulina Guevara.
Diseño Físico Procedimientos Almacenados y Disparadores (Triggers)
4.3. Privilegios de usuarios
PL/SQL Francisco Moreno Universidad Nacional.
Control del Acceso de los Usuarios
Clase 9 Curso Microsoft.NETCurso Microsoft.NET I.S.F.T. N° 182I.S.F.T. N° 182.
MySQL M.C. Pedro Bello López.
SQL Lenguaje de consulta estructurado
1 BD Activas: Motivación zLos SGBD convencionales son “pasivos”. Sólo ejecutan preguntas o transacciones realizadas por los usuarios o por los programas.
PL/SQL Francisco Moreno Universidad Nacional. Introducción al PL/SQL ¿Por qué PL/SQL? A pesar de que SQL tiene mecanismos de control condicional (cláusula.
Bases de Datos Relacionales
16/04/ Sesión 11 Funciones y procedimientos Ing. Ricardo Inquilla.
PL/SQL Francisco Moreno Universidad Nacional.
Subconsultas Avanzadas
Ing. Ricardo Carlos Inquilla Quispe
Procedimientos Almacenados Funciones Agregadas
Bases de datos en la Web n Las bases de datos permiten almacenar de una forma estructurada y eficiente toda la información de un sitio web n Ventajas –Proporcionar.
UNITA - IBARRA TRIGGERS
Lenguaje Estructurado de Consultas
John Freddy Duitama M.U.de.A. Facultad de Ingeniería. Creación del esquema de Una Base de Datos. John Freddy Duitama Muñoz. Facultad de Ingeniería. U.de.A.
UNIVERSIDAD NACIONAL AUTONOMA DE MEXICO MODULO IV ADMINISTRACIÓN DE BASES DE DATOS Administración del DBMS E.I. L.E. Prof. Ramón Castro Liceaga SEMINARIO.
Universidad del Cauca – FIET – Departamento de Sistemas CAPITULO 11 Creando Vistas.
CONCEPTOS BASICOS SQL SERVER SEBASTIAN MARTINEZ GARCIA.
Aprenda MySQL en 120 minutos Tutorial. Dirigido a...
TRIGGERS EN ORACLE 8 J. Iriarte S. España
Diseñando la arquitectura de aplicaciones empresariales. Acceso al SQL Server.- Autenticación de usuario:
Triggers(Disparadores)
Estructura general de un programa en el servidor de Bases de Datos.
VISTAS.  Una Vista es una tabla virtual.  Provee otra manera de buscar en los datos existentes  Se definen para facilitar y restringir el acceso a.
LENGUAJE SQL.
Structured Query Language (Lenguaje Estructurado de Consultas)
John Freddy Duitama M.U.de.A. Facultad de Ingeniería. Creación del esquema de Una Base de Datos. John Freddy Duitama Muñoz. Facultad de Ingeniería. U.de.A.
Lenguaje Estructurado de Consulta
SQL Sigla del nombre “Structured Query Language”.
INSTRUCCIONES Elaboración de la Presentación:
Para crear una vista debemos utilizar la sentencia CREATE VIEW, debiendo proporcionar un nombre a la vista y una sentencia SQL SELECT válida. CREATE.
MySQL LENGUAJE SQL.
Manual violento de Navicat
Unidad 4 SEGURIDAD 4.1 Tipos de usuarios
Tema 11 Bases de Datos y el Lenguaje SQL
SQL (Structured Query Language) Lenguaje orientado a bases de datos y sobre todo, al manejo de consultas; el objetivo principal de SQL es la realización.
Comandos de SQL Prog. Orientada a Eventos. Inserción de datos (INSERT) INSERT….VALUES INSERT INTO Tabla1 (Columna1, Columna2…) VALUES (‘ValorAlfa’, ValorNum…);
MSSQL SERVER CURSO BÁSICO 1. DESCRIPCIÓN DEL CURSO. Sesión 4: Sentencia Insert,Transacciones,Insert general, Insert Select * From, Sentencia Update,Update.
DISPARADORES Y SISTEMAS DE GESTION DE BASE DE DATOS DE SQL
SQL es un estándar internacional para trabajar con bases de datos, que consta de dos partes: una parte para manipular datos y una parte para definir tipos.
MULTIPLAN Multiplan es la práctica en grupo que hemos tenido que realizar durante el curso según las especificaciones dadas en la asignatura.
Usuarios. Colocar el servidor en el modo de autenticación Windows/SqlServer. En SQL Server Management Studio, click derecho, Propiedades en la Instancia.
UNIVERSIDAD LATINA IV. CONSULTAS AVANZADAS CON BASES DE DATOS. E.I. L.E. Prof. Ramón Castro Liceaga.
6 Triggers ORACLE - II Bases de datos II I-2014 Universidad del Cauca Ing. Wilson Ortega Bases de datos II I-2014 Universidad del Cauca Ing. Wilson Ortega.
DLM Transact SQL Sesión I Introducción al SQL Server Uso de las herramientas de consultas del Transact SQL.
DML Transact SQL Sesión X Triggers. Duración 2 Horas.
DML Transact SQL Sesión IX Introducción a los procedimientos almacenados.
Implementación de funciones definidas por el usuario.
6 Triggers ORACLE Bases de datos II I-2014 Universidad del Cauca Ing. Wilson Ortega Bases de datos II I-2014 Universidad del Cauca Ing. Wilson Ortega.
6 Triggers ORACLE - III Bases de datos II I-2014 Universidad del Cauca Ing. Wilson Ortega Bases de datos II I-2014 Universidad del Cauca Ing. Wilson Ortega.
BASE DE DATOS IUPSM CLASE PRACTICA. PROF. ING. JOSE L GUZMAN H.
UN DISPARADOR O TRIGGER es un procedimiento que se ejecuta cuando se cumple una condición establecida al realizar una operación. Es una rutina autónoma.
Transcripción de la presentación:

UNIVERSIDAD NACIONAL DE LOJA Carrera de Ingeniería en Sistemas MySQL 5.0 Milton Labanda 1000ton.lab@gmail.com UNIVERSIDAD NACIONAL DE LOJA Carrera de Ingeniería en Sistemas Enero 2006

Objetivos Actualizar conocimientos relacionados al currículum. Revisar algunas novedades en la v 5.0 Explotar el uso de herramientas relacionadas

¿Ventajas de MySQL? Es un Sistema Gestor de Bases de Datos disponible en la mayoría de plataformas. El servidor de Bases de Datos Open Source más popular. Liviano y rápido: adecuado para aplicaciones Web. Cuenta con APIs disponibles para C, C++, Perl, PHP, Python, Java, .NET

Estado de MySQL Anterior versión estable: Actual versión estable: 5.0 Futura versión estable: 5.1 Se sigue utilizando las versiones 4.0 y 4.1

Novedades de la Versión 5.0 Múltiples Instancias del Servidor Stored Procedures (Procedimientos Almacenados) Triggers (Disparadores) Views (Vistas) Acceso al Metadata de las BD

Configuración de Múltiples Instancias Archivo ‘my.ini’ ####################################### # Servidor 1 # ###################################### [mysqld1] datadir = "C:/mydata1/" port = 3307 enable-named-pipe socket = pipe1 # Servidor 2 # [mysqld2] datadir = "c:/mydata2/" port = 3308 socket = pipe2

Configuración de Múltiples Instancias Instalación de las instancias como servicios de windows: mysqld-nt - -install mysqld1 mysqld-nt - -install mysqld2 Arranque de las Instancias del servidor: NET START mysqld1 NET START mysqld2

Stored Procedures Un procedimiento almacenado es una rutina (procedimiento o función) que es almacenada dentro de la base de datos. Sentencias: CREATE PROCEDURE/FUNCTION ALTER PROCEDURE/FUNCTION DROP PROCEDURE/FUNCTION

Stored Procedures: Sintaxis Sintaxis de Creación: CREATE PROCEDURE nombre_proc ([parametro …]) [característica …] cuerpo_proc CREATE FUNCTION nombre_func RETURNS tipo_dato cuerpo_func

Stored Procedures Cuerpo de la Rutina Sintaxis del cuerpo Especifica que es lo que hará la rutina Puede contener una o más sentencias SQL Puede incluir sentencias DECLARE Sintaxis del cuerpo BEGIN [DECLARE variables, cursores, condiciones] [Sentencias SQL] END

Stored Procedures: Ejemplos CREATE PROCEDURE p1 () BEGIN DECLARE v1 INT DEFAULT 10; SET v1 = 5; INSERT INTO t VALUES (v1); END;

Stored Procedures: Ejemplos CREATE PROCEDURE copiar () BEGIN DECLARE var1 VARCHAR(34); DECLARE c1 CURSOR FOR SELECT name FROM test.t; OPEN c1; REPEAT FETH c1 INTO var1; …. END;

Stored Procedures CREATE FUNCTION saludar (nombre CHAR(20)) RETURNS CHAR (40) BEGIN DECLARE saludo CHAR(40); SET saludo = CONCAT('Hola, ‘ ,UPPER(nombre), ', como estas?'); RETURN saludo; END

Stored Procedures Invocar a un Procedimiento almacenado: call nombre_proc([params, …]) Ejemplo: CALL proc1( ); Invocar a una función almacenada: Generalmente: select nombre_func([params, …]) SELECT saludar(‘Enrique’);

Stored Procedures: Sentencias de Control IF – si <condicion> hacer <acción> CASE – selección alternativa, dependiente LOOP – hacer <acción> repetidamente LEAVE – terminación de un bucle o bloque ITERATE – reinicia un bucle REPEAT – repetir <acción> hasta <condición> sea verdadera WHILE – repetir <action> mientras

Stored Procedures Ventajas: Mejorar el Desempeño Ahorrar tiempo, dinero y recursos

Triggers Un Trigger es una acción en cadena que empieza cuando un evento específico ocurre sobre una tabla específica.

Triggers: Sintaxis CREATE TRIGGER nombre_trigger {BEFORE | AFTER} {INSERT | UPDATE | DELETE} ON nombre_table FOR EACH ROW acción_trigger | sentencias SQL

Triggers: Usos Registrar, auditar y monitorear la actividad de cambio de datos Validar datos, cambiando o negando acciones como INSERT, UPDATE, DELETE en una tabla Preservar la consistencia y claridad de los datos ejecutando acciones relacionadas en tablas relacionadas

Triggers: Ejemplos CREATE TRIGGER info AFTER INSERT ON test.t FOR EACH ROW SET @ultimo = NEW.id;

Triggers: Ejemplos CREATE TRIGGER update_check BEFORE UPDATE ON test.t FOR EACH ROW BEGIN IF LENGTH(NEW.name) = 0 THEN SET NEW.name = 'Nombres'; END IF; END;

Vistas Una Vista es una tabla virtual Provee otra manera de buscar en los datos existentes No usan espacio extra en disco La sintaxis de las Vistas MySQL son 100% compatibles con el SQL standard.

Vistas: Sintaxis CREATE [OR REPLACE] VIEW nombre_vista [(lista_columnas)] AS sentencia_select [WITH [CASCADED | LOCAL] CHECK OPTION]

Vistas: Ejemplos

Vistas: Ejemplos WITH CHECK OPTION CREATE VIEW v1 AS SELECT col1 FROM t1 WHERE col1 <> 'A' WITH CHECK OPTION; mysql> UPDATE v1 SET col1 = 'A'; ERROR 1369 (HY000): CHECK OPTION failed ‘test.v1'

Vistas: Ejemplos WITH LOCAL CHECK OPTION CREATE VIEW v2 AS SELECT * FROM v1 WHERE col1 <> 'B' WITH LOCAL CHECK OPTION; mysql> INSERT INTO v2 VALUES ('B'); ERROR 1369 (HY000): CHECK OPTION failed ‘test.v2' mysql> INSERT INTO v2 VALUES ('A'); Query OK, 1 row affected (0.01 sec)

Vistas: Ejemplos WITH CASCADED CHECK OPTION CREATE VIEW v3 AS SELECT * FROM v2 WHERE col1 <> 'C' WITH CASCADED CHECK OPTION; mysql> INSERT INTO v3 VALUES ('B'); ERROR 1369 (HY000): CHECK OPTION failed ‘test.v3' -- porque las condiciones de v2 no permiten 'B' y v3 depende de v2 mysql> INSERT INTO v3 VALUES ('A'); -- porque las condiciones de v1 no permiten 'A' and v3 depende de v1 y v2

Vistas: Actualización Una Vista actualizable puede aceptar sentencias UPDATE, DELETE Algunas vistas pueden permitir INSERT Los cambios de los datos se propagan automáticamente a la tabla base.

Vistas: Usos Las vistas pueden ser usadas en lugar de definir restricciones utilizando por ejemplo NOT NULL, BETWEEN, etc. Pueden usarse en la reestructuración de tablas, ocultando o moviendo columnas. Permiten implementar seguridad en los datos al ocultar registros.

INFORMATION_SCHEMA El Esquema de Información es la forma SQL standard para acceder el metadata de la base de datos. Contiene una serie de tablas que describen los objetos de la base de datos Es una base de datos virtual visible a través de sentencias SELECT

INFORMATION_SCHEMA Ventajas: Standarización del manejo del metadata, quedando atrás el uso de comandos SHOW específicos de MySQL No se necesita aprender un nuevo conjunto de comandos para acceder el metadata.

INFORMATION_SCHEMA Visualización:

INFORMATION_SCHEMA Objetos mas importantes: SCHEMATA TABLES VIEWS ROUTINES COLUMNS

INFORMATION_SCHEMA Objetos mas importantes:

MySQL Tips Mostrar resultados verticalmente: \G

MySQL Tips Prevenir resultados inesperados al usar sentencias de modificación: Usar la opción -U al conectarse C:>mysql –u usuario –p –U Obliga a usar la cláusula WHERE al realizar un UPDATE O DELETE.

MySQL Tips Cambiar la contraseña del superusuario ‘root’ y renombrar el usuario c:> mysqladmin -u root password ‘nueva_clave’ mysql> update mysql.user -> set user = ‘admin’ -> where user = ‘root’

MySQL Tips Proteger el directorio de instalación del acceso de otros usuarios. Apegarse al ANSI SQL si se requiere portabilidad No mezclar el código de la interfaz del usuario con código de bases de datos. Usar pool de conexiones en Servidores Web y Servidores a Aplicaciones

MySQL Tips Ejecutar sentencias sin entrar al cliente mysql C:> mysql –u root –p –e “select * from test.t” Exportar a XML C:> mysql –u user –p –e “sentencias” –X > archivo.xml Exportar a HTML C:> mysql –u user –p –e “sentencias” –H > archivo.html

GRACIAS!