BASES DE DATOS curso 2002/3
|
|
|
- Lorenzo Lozano Olivares
- hace 10 años
- Vistas:
Transcripción
1 3º Ingeniero en Informática BASES DE DATOS curso 2002/3 Anexos del tema 14.- Control de la concurrencia Algunas notas interesantes acerca del significado y propósito de los niveles de aislamiento de transacciones definidos en el estándar SQL-92 y su relación con el control de la concurrencia. Algunos comentarios acerca de los aspectos relacionados con el control de la concurrencia realizado por el SGBDR Oracle, extraídas de la documentación en línea. Figuras de apoyo a las transparencias empleadas para la explicación del tema (disponibles en fotocopiadora). Anexo del tema 14. Control de la concurrencia. Pág. 1
2 Nivel de aislamiento de una transacción En un tema anterior, estudiamos los conceptos relacionados con el procesamiento de transacciones, y en particular las propiedades de éstas. En dicho tema, se nos indicó que el Subsistema de Control de Concurrencia del SGBD era el encargado de conseguir el aislamiento de las transacciones. A continuación, una vez estudiados los conceptos relacionados con la concurrencia en sistemas de bases de datos, vamos a ver cómo tratan el concepto de aislamiento tanto SQL-92 como Oracle7, incluyendo también información acerca del control explícito de la concurrencia (mediante bloqueo de datos manual). El estándar SQL-92 [EN 2002], [DD 1996] SET TRANSACTION Sentencia utilizada para definir ciertas características de la siguiente transacción SQL a iniciar. (Nótese que SET TRANSACTION puede ser ejecutada sólo cuando no hay ninguna transacción SQL en progreso, y no es en sí misma una sentencia iniciadora de transacción). Las características en cuestión son el modo de acceso, el tamaño del área de diagnóstico y el nivel de aislamiento. La sintaxis es SET TRANSACTION option-list Donde option-list contiene al menos una opción de modo de acceso, al menos una opción de tamaño del área de diagnóstico, y al menos una opción del nivel de aislamiento. La opción de modo de acceso es READ ONLY o bien READ WRITE. Si no se especifica ninguna, se asume READ WRITE, a menos que se especifique el nivel de aislamiento READ UNCOMMITTED, en cuyo caso se asume READ ONLY. El modo READ WRITE permite que se ejecuten sentencias de modificación (INSERT, UPDATE, DELETE, CREATE, ALTER, DROP). Si se especifica READ WRITE, el nivel de aislamiento no debe ser READ UNCOMMITTED. READ ONLY prohíbe las actualizaciones, por supuesto, excepto sobre tablas temporales 1 ; el estándar no dice si también prohíbe sentencias de esquema SQL (las que implican actualizaciones sobre los esquemas 2 ). La opción de tamaño del área de diagnóstico toma la forma DIAGNOSTICS SIZE n, donde n es un literal, parámetro o variable host de un tipo numérico exacto. El valor de n (el cual debe ser mayor que cero) especifica el número de condiciones 3 que pueden ser almacenadas en un momento dado en el Área de Diagnósticos. Si se omite la opción de tamaño del área de diagnósticos, se asume para n un valor definido por la implementación (que debe ser al menos 1). La opción de nivel de aislamiento toma la forma ISOLATION LEVEL isolation, donde isolation es READ UNCOMMIT- TED, READ COMMITTED, REPEATABLE READ, o SERIARIZABLE. La opción por defecto es SERIARIZABLE; si alguna de las otras tres es especificada, la implementación es libre de asignar algún nivel mayor, donde mayor está definido en términos del siguiente ordenamiento: SERIARIZABLE > REPEATABLE READ > READ COMMITTED > READ UNCOMMITTED. Concurrencia Si todas las transacciones se ejecutan en el nivel de aislamiento SERIALIZABLE (por defecto), entonces se garantiza que la ejecución intercalada de cualquier conjunto de transacciones concurrentes será serializable, en 1 Véase libro [DD 1996], incluido en la bibliografía relacionada con las prácticas de la asignatura. 2 Entendemos que se refiere a sentencias LDD de creación/alteración/destrucción de esquemas y sus elementos. 3 Por condición se entiende información de feedback relacionada con la sentencia SQL ejecutada más recientemente y tiene que ver con el manejo de excepciones. Ejemplos de condiciones serían: successful completion, data not found, connection error o constraint violation. (Para más información, véase [DD 1996]) Anexo del tema 14. Control de la concurrencia. Pág. 2
3 el sentido de que producirá los mismos efectos que alguna ejecución en serie (no especificada) de las mismas transacciones. El nivel de aislamiento establece el grado de interferencia que una transacción tolera cuando se ejecuta concurrentemente con otras transacciones. El aislamiento debería ser el máximo (SERIALIZABLE, mínima interferencia), pero por cuestiones prácticas, puede permitirse que las transacciones se ejecuten en niveles de aislamiento menores, para permitir mayor grado de concurrencia (aumentando así la productividad de las transacciones y disminuyendo la contención de recursos). Si alguna transacción se ejecuta a un nivel de aislamiento menor, la seriabilidad puede ser violada de varias formas diferentes. Más concretamente, el estándar define tres formas en las que esto puede ocurrir: lectura sucia, lectura no repetible y fantasmas (con la implicación de que estas son las únicas violaciones permitidas). Explicaremos cada una de ellas a continuación. Lectura Sucia: Supongamos que una transacción T1 ejecuta una actualización sobre alguna fila f, otra transacción T2 recupera dicha fila y después T1 termina con rollback. La transacción T2 ha visto, por tanto, una fila (la obtenida a partir de la modificación de aquella f ) que ya no existe y que en cierto sentido nunca existió, puesto que T1 no llegó a ejecutarse nunca. Lectura No Repetible: Supongamos que T1 recupera una fila, después T2 actualiza dicha fila, y más tarde T1 vuelve a recuperar la fila de nuevo. La transacción T1 ha recuperado la misma fila dos veces, pero ha visto dos valores distintos para ella. Fantasmas: Supongamos que T1 recupera el conjunto de todas las filas que satisfacen una condición (por ejemplo todos los proveedores cuya ciudad es París). Supongamos que ahora T2 inserta una nueva fila que satisface dicha condición. Si T1 ahora repite su petición de recuperación, verá una fila que antes no existía: un fantasma. Por supuesto, ninguno de estos problemas puede surgir en una ejecución en serie (e insistimos, tampoco si todas las transacciones se ejecutan en el nivel de aislamiento SERIALIZABLE). Los niveles de aislamiento están definidos en términos de las violaciones de la seriabilidad que permiten. Ello está resumido en la siguiente tabla, en la cual Sí significa que puede ocurrir la violación, y No significa que no puede ocurrir. Nivel de aislamiento Lectura sucia Lectura no repetible Fantasmas READ UNCOMMITTED Sí Sí Sí READ COMMITTED No Sí Sí REPEATABLE READ No No Sí SERIALIZABLE No No No Nota: un sistema que soporte cualquier nivel de aislamiento distinto de SERIALIZABLE (que es, por supuesto, el único nivel totalmente seguro), debería proporcionar además algunas facilidades de control explícito de la concurrencia por ejemplo sentencias LOCK (bloquear) explícitas para permitir a los usuarios escribir sus aplicaciones de forma que se garantice la no existencia de problemas debidos a la concurrencia, en ausencia de tales garantías por parte del sistema en sí mismo. Por ejemplo, el producto DB2 de IBM soporta actualmente 4 dos niveles de aislamiento que corresponden a los niveles estándar de READ COMMITTED y SERIALIZABLE. Pero también proporciona una sentencia explícita LOCK TABLE, que permite a los usuarios trabajar en el nivel READ COMMITTED para adquirir bloqueos explícitos, además de que el SGBD DB2 podrá adquirirlos automáticamente para imponer dicho nivel. El estándar SQL-92, sin embargo, no incluye tales mecanismos de control explícito de la concurrencia. Más adelante se describe la sentencia LOCK TABLE proporcionada por el SGBDR Oracle7. 4 Se refiere al momento en que se redactó el estándar SQL-92. Anexo del tema 14. Control de la concurrencia. Pág. 3
4 Oracle7 Esta sección explica los mecanismos software utilizados por Oracle7 para alcanzar los siguientes requisitos importantes para un sistema de gestión de información: los datos deben ser leídos y modificados de manera consistente la concurrencia de datos de un sistema multiusuario debe ser maximizada se necesita alta eficiencia para conseguir la máxima productividad de los usuarios del sistema de BD Concurrencia Uno de los intereses principales de un sistema de gestión de base de datos (SGBD) multiusuario es el control de la concurrencia, o el acceso simultáneo a los mismos datos por parte de muchos usuarios. Sin los controles de concurrencia adecuados, los datos podrían ser modificados o cambiados de manera no apropiada, haciendo peligrar la integridad de datos. Si mucha gente está accediendo a los mismos datos, una manera de manejar la concurrencia de datos es hacer que cada usuario espere su turno. El objetivo de un SGBD es reducir esta espera de forma que sea insignificante o inexistente para cada usuario. Todas las sentencias LMD de manipulación de datos (Data Manipulation Language, DML) deberían realizarse con la menor interferencia posible y las interacciones destructivas entre transacciones concurrentes deberían ser evitadas. Una interacción destructiva es cualquier interacción que actualice de forma incorrecta los datos o bien altere las estructuras de datos subyacentes (como tablas, por ejemplo) de forma incorrecta. Ni la eficiencia ni la integridad de datos pueden ser sacrificadas. Oracle resuelve tales cuestiones utilizando varios tipos de bloqueos y un modelo de consistencia multiversión. Ambas características son discutidas más adelante. Están basadas en el concepto de transacción. Como se discute en el apartado Data Consistency Using Transactions de la documentación on-line de Oracle7, es responsabilidad del diseñador de aplicaciones asegurar que las transacciones explotan completamente estas características de concurrencia y consistencia. Consistencia de Lectura (Read Consistency) La consistencia de lectura, tal y como la soporta Oracle, hace lo siguiente: Garantiza que el conjunto de datos visto por una sentencia es consistente con respecto de un momento concreto en el tiempo y que no cambia durante la ejecución de la sentencia (consistencia de lectura en el nivel de sentencia, statement-level read consistency) Asegura que los lectores de datos de la BD no esperan a los escritores u otros lectores de los mismos datos. Asegura que los escritores de datos de la BD no esperan a los lectores de los mismos datos. Asegura que los escritores sólo esperan a otros escritores si éstos intentan modificar las mismas filas en transacciones concurrentes. La manera más simple de pensar en la implementación de Oracle de la consistencia de lectura es imaginar a cada usuario trabajando con una copia privada de la base de datos, de ahí el modelo de consistencia multiversión. Consistencia de Lectura, Segmentos de Rollback y Transacciones Para manejar el modelo de consistencia multiversión, Oracle debe crear un conjunto o vista de lectura consistente (read-consistent set) de los datos cuando una tabla está siendo simultáneamente consultada (lectura) y modificada (escritura). A continuación se describe cómo lo crea. Cuando tiene lugar una actualización, los valores originales (de los datos afectados por la modificación) son almacenados en los segmentos de rollback. Mientras esta actualización permanezca como parte de una transacción no confirmada, cualquier usuario que consulte los datos modificados, verá los valores originales: Oracle utiliza la información actual en el área global del sistema y la información en los segmentos de rollback para construir una vista de lectura consistente de los datos de una tabla para una consulta. Sólo cuando una Anexo del tema 14. Control de la concurrencia. Pág. 4
5 transacción es confirmada, los cambios realizados por la misma se establecen como permanentes. Las sentencias que comiencen después de que la transacción del usuario haya sido confirmada, sólo verán los cambios hechos por la transacción confirmada. Nótese que el concepto de transacción es clave en la estrategia de Oracle para proporcionar consistencia de lectura. Esta unidad de sentencias SQL confirmadas (o no confirmadas)... dicta el punto de partida para las vistas de lectura consistente generadas en pro de los lectores, controla cuándo los datos modificados pueden ser vistos por otras transacciones de la base de datos, para lectura o modificación. Transacciones de Sólo Lectura (Read-Only Transactions) Por defecto, Oracle garantiza consistencia de lectura en el nivel de sentencia (statement-level read consistency). El conjunto de datos devueltos por cierta consulta es consistente con respecto a un momento puntual en el tiempo. Sin embargo, en algunas situaciones, se puede necesitar también consistencia de lectura en el nivel de transacción (transaction-level read consistency) la capacidad de ejecutar múltiples consultas dentro de una misma transacción, todas las cuales son de lectura consistente respecto del mismo punto del tiempo, para que dichas consultas en esta transacción no vean los efectos de otras transacciones confirmadas que se intercalen. Si se desea ejecutar unas cuantas consultas contra múltiples tablas y no se está realizando ninguna modificación, se puede preferir el uso de una transacción de sólo-lectura (read-only transaction). Tras indicar que una transacción es de sólo-lectura, se puede ejecutar tantas consultas como se quiera contra cualquier tabla, sabiendo que los resultados de cada consulta serán consistentes con respecto al mismo momento del tiempo. Bloqueo (Locking) Oracle también utiliza bloqueos (locks) para controlar el acceso concurrente a los datos. Los bloqueos son mecanismos para evitar la interacción destructiva entre usuarios que acceden a datos Oracle. Los bloqueos se usan para conseguir dos importantes objetivos de las bases de datos: Consistencia, que asegura que los datos que está viendo o modificando un usuario no es modificado (por otros usuarios) hasta que el usuario termine de utilizar los datos. Integridad, que asegura que los datos y estructuras de la base de datos reflejan todos los cambios realizados sobre ellos en la secuencia correcta. Los bloqueos garantizan la integridad de datos, al tiempo que permiten el máximo acceso concurrente a los datos por parte de un número ilimitado de usuarios. Bloqueo Automático (Automatic Locking) El bloqueo de Oracle es realizado automáticamente y no necesita la acción del usuario. El bloqueo implícito ocurre cuando se necesita en una sentencia SQL, dependiendo de la acción solicitada. El gestor de bloqueos sofisticado de Oracle bloquea automáticamente los datos de las tablas en el nivel de fila. Mediante el bloqueo de tabla en el nivel de fila, se minimiza la contención para los mismos datos. El gestor de bloqueos de Oracle mantiene diversos tipos de bloqueos de filas, dependiendo de qué tipo de operación establece el bloqueo. En general existen dos tipos de bloqueos: exclusivos (exclusive locks) y compartidos (share locks). Sobre un recurso (como una fila o una tabla) se puede obtener un solo bloqueo exclusivo, sin embargo es posible obtener muchos bloqueos compartidos sobre un mismo recurso. Tanto los bloqueos exclusivos como los compartidos siempre permiten a otras transacciones realizar consultas (SELECT) sobre el recurso bloqueado, pero prohíben cualquier otra actividad sobre el recurso (como las actualizaciones (UPDATE) o borrados (DELETE)). Bloqueo Manual (Manual Locking) Bajo ciertas circunstancias, un usuario puede ignorar el bloqueo por defecto. Oracle permite al usuario desentenderse de las características del bloqueo automático tanto en el nivel de fila (mediante la consulta previa de las filas que serán actualizadas en una sentencia posterior) como en el nivel de tabla. Para ello proporciona la sentencia LOCK TABLE para manejar los bloqueos de forma manual. Anexo del tema 14. Control de la concurrencia. Pág. 5
6 A continuación se describen dos sentencias SQL de Oracle relacionadas con la concurrencia: SET TRANSAC- TION y LOCK TABLE. SET TRANSACTION Propósitos Dada la transacción actual T: Establecer T como transacción de sólo-lectura (read-only) o como transacción de lectura-escritura (read-write) Establecer el nivel de aislamiento de T Asignar la transacción T a un segmento de rollback específico Prerrequisitos Si se utiliza una sentencia SET TRANSACTION, debe ser la primera sentencia de la transacción. Sin embargo, no todas las transacciones necesitan tener una sentencia SET TRANSACTION. Sintaxis Palabras Clave y Parámetros READ ONLY Establece la transacción actual como transacción de sólo-lectura. READ WRITE Establece la transacción actual como transacción de lectura-escritura (por defecto). ISOLATION LEVEL Especifica cómo son manejadas las transacciones que contienen modificaciones de la base de datos. SERIALIZABLE Establece el modo de aislamiento de transacciones serializable tal y como se especifica en SQL-92. Es decir, si una transacción serializable T intenta ejecutar una sentencia LMD que actualiza cualquier recurso que puede haber sido modificado en una transacción no confirmada al comienzo de T, entonces dicha sentencia LMD falla. Para que funcione el modo SERIALIZABLE, el parámetro de inicialización COMPATIBLE debe haber sido establecido a o superior 5. READ COMMITTED Establece el comportamiento por defecto de las transacciones Oracle. Por tanto, si la transacción T contiene LMD que necesite filas ya bloqueadas por otra transacción, entonces la sentencia LMD esperará hasta que los bloqueos de las filas sean liberados. USE ROLLBACK SEGMENT Asigna la transacción actual al segmento de rollback especificado. Esta opción también establece la transacción como de lectura-escritura (read-write transaction). No es posible usar la opción READ ONLY y la cláusula USE ROLLBACK SEGMENT en una misma sentencia SET TRANSACTION, o en diferentes sentencias en la misma transacción. Las transacciones de sólo-lectura no generan información de rollback y por tanto no tienen asignados segmentos de rollback. 5 Se refiere a la versión del SGBD Oracle utilizado. Anexo del tema 14. Control de la concurrencia. Pág. 6
7 Notas de uso Las operaciones realizadas por la sentencia SET TRANSACTION sólo afectan a la transacción actual, no a otros usuarios ni a otras transacciones. La transacción finaliza si se ejecuta una sentencia COMMIT o un ROLLBACK. Recuérdese además que Oracle confirma la transacción actual (implícitamente) antes y después de ejecutar una sentencia LDD de definición de datos (Data Definition Language, DDL). Establecimiento de Transacciones de Sólo-Lectura El estado por defecto para todas las transacciones es consistencia de lectura en el nivel de sentencia. Es posible especificar explícitamente este estado, ejecutando una sentencia SET TRANSACTION con la opción READ WRITE. Se puede establecer consistencia de lectura en el nivel de transacción mediante una sentencia SET TRANSACTION con la opción READ ONLY Después de que una transacción T haya sido establecida como de sólo lectura, todas las consultas subsecuentes contenidas en esta transacción T sólo ven los cambios confirmados antes de que la transacción comenzara. Las transacciones de sólo-lectura son muy útiles para informes (reports) que ejecuten múltiples consultas sobre una o más tablas mientras otros usuarios actualizan esas mismas tablas 6. Éstas son las únicas sentencias permitidas en una transacción de sólo-lectura: SELECT (excepto sentencias con la cláusula FOR UPDATE) LOCK TABLE SET ROLE ALTER SESSION ALTER SYSTEM Las sentencias INSERT, UPDATE y DELETE, y sentencias SELECT con la cláusula FOR UPDATE no están permitidas. Cualquier sentencia LDD (lenguaje de definición de datos) termina implícitamente la transacción de sólo-lectura. La consistencia de lectura que proporcionan las transacciones de sólo-lectura se implementa de igual forma que la consistencia de lectura en el nivel de sentencia: si por defecto cada sentencia utiliza una vista consistente de los datos tal y como están en el momento en que se ejecuta la sentencia, de forma similar las transacciones de sólo-lectura presentan una vista consistente de los datos tal y como están en el momento en que se ejecuta la sentencia SET TRANSACTION READ ONLY. Las transacciones de sólo-lectura proporcionan consistencia de lectura para todos los nodos accedidos por consultas distribuidas y consultas locales. No es posible conmutar entre consistencia de lectura en el nivel de transacción y consistencia de lectura en el nivel de sentencia en la misma transacción. Ejemplo I Las siguientes sentencias podrían ser ejecutadas a medianoche del último día de cada mes, para contar cuántos productos y clientes tiene una empresa. Este informe ni afectaría a, ni sería afectado por ningún otro usuario que pudiera estar añadiendo o eliminando productos y/o clientes. COMMIT ; SET TRANSACTION READ ONLY ; SELECT COUNT(*) FROM Producto ; SELECT COUNT(*) FROM Cliente ; COMMIT ; Este último COMMIT realmente no hace permanente ningún cambio en la base de datos, sino que termina la transacción de sólo lectura. 6 Se evita, por tanto, el problema del resumen incorrecto y el de lectura no repetible. Anexo del tema 14. Control de la concurrencia. Pág. 7
8 Asignación de Transacciones a Segmentos de Rollback Si se ejecuta una sentencia LMD en una transacción, Oracle7 asigna la transacción a un segmento de rollback. El segmento de rollback contiene la información necesaria para deshacer los cambios realizados por una transacción. Se puede ejecutar una sentencia SET TRANSACTION con la cláusula USE ROLLBACK SEGMENT para elegir un segmento específico de rollback para la transacción. Si no se elige ningún segmento de rollback, Oracle7 elige uno aleatoriamente y asigna la transacción al mismo. SET TRANSACTION permite asignar transacciones de diferentes tipos a segmentos de rollback de diferentes tamaños: Asignar transacciones OLTP, o pequeñas transacciones que contienen sólo unas pocas sentencias de LMD que modifican sólo unas pocas filas, a segmentos pequeños de rollback si no hay consultas de larga ejecución leyendo concurrentemente las mismas tablas. Es más apropiado mantener en memoria los segmentos de rollback pequeños. Asignar transacciones que modifiquen tablas que están siendo leídas concurrentemente por consultas de larga duración, a segmentos de rollback grandes, para que no sea sobreescrita la información de rollback necesaria para las consultas de lectura. Asignar transacciones con enormes sentencias LMD, o sentencias que inserten, actualicen o borren grandes cantidades de datos, a segmentos de rollback lo bastante grandes para almacenar la información de rollback para la transacción. Ejemplo II La siguiente sentencia asigna la transacción actual al segmento de rollback llamado OLTP_5: SET TRANSACTION USE ROLLBACK SEGMENT oltp_5 ; Tópicos Relacionados Comandos COMMIT, ROLLBACK, SAVEPOINT. Anexo del tema 14. Control de la concurrencia. Pág. 8
9 LOCK TABLE Propósito Permite bloquear una o más tablas y especificar el modo de bloqueo deseado. Este bloqueo manual se superpone sobre el bloqueo automático, y permite o deniega el acceso a una tabla o vista por parte de otros usuarios durante la duración de una operación. Prerrequisitos La tabla o vista debe estar en el propio esquema del usuario que ejecuta la sentencia de bloqueo, o el usuario debe tener el privilegio de sistema LOCK ANY TABLE, o bien debe tener cualquier privilegio de objeto sobre la tabla o vista. Sintaxis Palabras Clave y Parámetros schema es el esquema que contiene la tabla o vista. Si se omite schema, Oracle7 asume que la tabla o vista está en el propio esquema del usuario. table view es el nombre de la tabla que se desea bloquear. Si se especifica view, Oracle7 bloquea las tablas base de la vista. dblink es un vínculo hacia una base de datos Oracle7 remota donde está situada la tabla o vista. Para más información acerca de la especificación de vínculos de bases de datos, véase la sección "Referring to Objects in Remote Databases" de la documentación on-line de Oracle7. Sólo es posible bloquear tablas y vistas de una base de datos remota si se está utilizando Oracle7 con la opción de distribución. Todas las tablas bloqueadas por una misma sentencia LOCK TABLE deben estar en una misma base de datos 7. Si se omite dblink, Oracle7 asume que la tabla o vista está en la base de datos local. lockmode es uno de los siguientes: ROW SHARE ROW EXCLUSIVE SHARE UPDATE SHARE SHARE ROW EXCLUSIVE EXCLUSIVE NOWAIT especifica que Oracle7 devuelve el control inmediatamente al usuario que ejecuta LOCK si la tabla especificada ya está bloqueada por otro usuario. En este caso, Oracle7 devuelve un mensaje indicando que la tabla ya está bloqueada por otro usuario. Si se omite esta cláusula, Oracle7 espera hasta que la tabla esté disponible, la bloquea, y devuelve el control. 7 Nótese que cuando se habla de distintas bases de datos (situadas en servidores diferentes o no), no se refiere a distintos esquemas dentro de una misma base de datos. Anexo del tema 14. Control de la concurrencia. Pág. 9
10 Notas de Uso (explicación de los diferentes modos de bloqueo) EXCLUSIVE Los bloqueos exclusivos permiten realizar consultas sobre una tabla bloqueada, pero prohíben cualquier otra actividad sobre ella. SHARE Los bloqueos compartidos permiten las consultas concurrentes, pero prohíben las modificaciones sobre la tabla bloqueada. ROW SHARE Los bloqueos compartidos de fila permiten acceso concurrente a la tabla bloqueada. Prohíben a los usuarios bloquear la tabla completa para acceso exclusivo. ROW SHARE es sinónimo de SHARE UPDATE. ROW EXCLUSIVE Los bloqueos exclusivos de fila son los mismos que los bloqueos compartidos de fila (ROW SHARE), pero también prohíben bloquear en modo SHARE. Los bloqueos exclusivos de fila son obtenidos automáticamente cuando se actualiza, se inserta o se borra. SHARE ROW EXCLUSIVE Los bloqueos exclusivos de filas compartidas se utilizan para ver una tabla completa y permitir a otros ver filas en la tabla, pero prohibirles bloquear la tabla en modo SHARE o modificar filas. SHARE UPDATE Los bloqueos de actualización compartida son sinónimos de los bloqueos compartidos de fila (ROW SHA- RE) y se incluyen por compatibilidad con anteriores versiones del RDBMS Oracle7. Para algunos tipos de bloqueo, se permite que varios bloqueos puedan ser obtenidos sobre la misma tabla al mismo tiempo, mientras que para otros sólo se permiten a razón de un bloqueo por tabla. Por ejemplo, varios usuarios pueden obtener a la vez varios bloqueos SHARE sobre una misma tabla, pero sólo un usuario puede obtener un bloqueo EXCLUSIVE sobre una tabla al mismo tiempo. Cuando un usuario bloquea una tabla, elige cómo pueden acceder a ella otros usuarios. Una tabla bloqueada permanece bloqueada hasta que el usuario que la bloqueó confirme su transacción (commit), o bien la cancele (rollback), ya sea completamente o hasta cierto savepoint anterior al bloqueo de dicha tabla. Un bloqueo nunca impide que otros usuarios consulten la tabla. Una consulta (lectura) nunca bloquea una tabla. Los lectores nunca bloquean a los escritores, y los escritores nunca bloquean a los lectores. Ejemplo I La siguiente sentencia bloquea la tabla EMP en modo exclusivo, pero no espera si otro usuario ya tiene bloqueada la tabla: LOCK TABLE emp IN EXCLUSIVE MODE NOWAIT ; Ejemplo II La siguiente sentencia bloquea la tabla remota CUENTA que es accesible a través del database link LONDRES: LOCK TABLE cuenta@londres IN SHARE MODE ; Tópicos Relacionados Comandos DELETE, INSERT, UPDATE, COMMIT, ROLLBACK, SAVEPOINT. Anexo del tema 14. Control de la concurrencia. Pág. 10
CONCEPTOS DE PROCESAMIENTO DE TRANSACCIONES
Tema 6. CONCEPTOS DE PROCESAMIENTO DE TRANSACCIONES TRANSACCIONES Una transacción es una unidad lógica de trabajo o procesamiento (ejecución de un programa que incluye operaciones de acceso a la base de
Manejo de Transacciones
Bases de Datos Transacciones 1 Manejo de Transacciones Jorge Pérez Rojas Universidad de Talca, II Semestre 2006 Bases de Datos Transacciones 2 Transacciones Hasta ahora el modelo de operación en la BD
Asignatura: Administración de Bases de Datos. Pedro P. Alarcón Cavero
Ingeniería Técnica en Informática Escuela Universitaria de Informática Universidad Politécnica de Madrid Asignatura: Administración de Bases de Datos Tema 5: Proceso de Transacciones Pedro P. Alarcón Cavero
1.1.- Objetivos de los sistemas de bases de datos 1.2.- Administración de los datos y administración de bases de datos 1.3.- Niveles de Arquitectura
1. Conceptos Generales 2. Modelo Entidad / Relación 3. Modelo Relacional 4. Integridad de datos relacional 5. Diseño de bases de datos relacionales 6. Lenguaje de consulta estructurado (SQL) 1.1.- Objetivos
Contenido Manejo de Concurren en Mysql... 2 Modos de bloqueo InnoDB... 2 InnoDB y AUTOCOMMIT... 3
Manejo de Concurrencia en Mysql Contenido Manejo de Concurren en Mysql... 2 Modos de bloqueo InnoDB... 2 InnoDB y AUTOCOMMIT... 3 InnoDB y TRANSACTION ISOLATION LEVEL... 3 Lecturas consistentes que no
Base de datos relacional
Base de datos relacional Una base de datos relacional es una base de datos que cumple con el modelo relacional, el cual es el modelo más utilizado en la actualidad para modelar problemas reales y administrar
Resumen. El rol del lenguaje SQL en los SGBDR y en la Relacional. [email protected], [email protected]
El rol del lenguaje SQL en los SGBDR y en la Relacional. [email protected], [email protected] Resumen demandas de almacenamiento y procesamiento de datos. Es el conjunto de estas dos capacidades
Concurrencia. Bibliografía: Introducción a los Sistemas de Bases de Datos Date, C.J.
Concurrencia Bibliografía: Introducción a los Sistemas de Bases de Datos Date, C.J. Concurrencia La mayor parte de los DBMS son sistemas para múltiples usuarios Se permite a cualquier cantidad de transacciones
Tema 6. Transacciones y seguridad
Tema 6. Transacciones y seguridad Las aplicaciones de bases de datos a gran escala, con bases de datos de gran tamaño y con cientos de usuarios concurrentes, como los sistemas de reservas, los bancos,
Consultas con combinaciones
UNIDAD 1.- PARTE 2 MANIPULACIÓN AVANZADA DE DATOS CON SQL. BASES DE DATOS PARA APLICACIONES Xochitl Clemente Parra Armando Méndez Morales Consultas con combinaciones Usando combinaciones (joins), se pueden
INTRODUCCIÓN A LOS SISTEMAS GESTORES DE BASE DE DATOS
INTRODUCCIÓN A LOS SISTEMAS GESTORES DE BASE DE DATOS AUTORÍA JOSEFA PÉREZ DOMÍNGUEZ TEMÁTICA NUEVAS TECNOLOGIAS ETAPA CICLOS FORMATIVOS DE GRADO SUPERIOR DE INFORMÁTICA Resumen En esta publicación se
SQL (Structured Query Language)
SQL (Structured Query Language) El lenguaje de consulta estructurado o SQL (por sus siglas en inglés Structured Query Language) es un lenguaje declarativo de acceso a bases de datos relacionales que permite
Transacciones y bloqueos en SQL-Server
Transacciones y bloqueos en SQL-Server (Información para el uso desde Axapta) Introducción En este documento vamos a intentar explicar cuatro conceptos básicos acerca de las transacciones y los bloqueos
Estructura de una BD Oracle. datafiles redo log controlfiles tablespace objetos Estructura lógica. Tablespaces tablespace SYSTEM
Estructura de una BD Oracle. Una BD Oracle tiene una estructura física y una estructura lógica que se mantienen separadamente. La estructura física se corresponde a los ficheros del sistema operativo:
Bases de Datos 3º Informática de Sistemas
TEMA 2.- EL SISTEMA GESTOR DE BASES DE DATOS. Concepto y Funciones del SGBD. Lenguajes de los SGBD. Niveles de Abstracción. Arquitectura ANSI/SPARC. Componentes del SGBD. 1. Concepto y Funciones del SGBD.
QUÉ ES UNA BASE DE DATOS Y CUÁLES SON LOS PRINCIPALES TIPOS? EJEMPLOS: MYSQL, SQLSERVER, ORACLE, POSTGRESQL, INFORMIX (DV00204A)
APRENDERAPROGRAMAR.COM QUÉ ES UNA BASE DE DATOS Y CUÁLES SON LOS PRINCIPALES TIPOS? EJEMPLOS: MYSQL, SQLSERVER, ORACLE, POSTGRESQL, INFORMIX (DV00204A) Sección: Divulgación Categoría: Lenguajes y entornos
ADMINISTRACIÓN DE BASE DE DATOS
SQL SERVER T-SQL QUERY s es ADMINISTRADOR GRÁFICO SGBD Elementos objetos Tablas Procedimientos Triggers Funciones Usuarios Permiso Roles Contraseñas Programas DTS (Data Transfer System) Exportación e Importación
Estructura de Bases de datos. Leonardo Víquez Acuña
Estructura de Bases de datos Leonardo Víquez Acuña Lenguajes de Bases de Datos Un sistema de bases de datos proporciona Un lenguaje de definición de datos para especificar el esquema de la base de datos
UNIDAD DIDACTICA 1: SISTEMAS GESTORES DE BASES DE DATOS
UNIDAD DIDACTICA 1: SISTEMAS GESTORES DE BASES DE DATOS Índice de contenido: 1. Concepto de base de datos (BD)... 3 2. Los sistemas gestores de bases de datos (SGBD)... 3 3. Arquitectura de los sistemas
CONSULTAS BASICAS EN SQL SERVER
CONSULTAS BASICAS EN SQL SERVER CONSULTAS DE SELECCION Las consultas de selección se utilizan para indicar al motor de datos que devuelva información de las bases de datos, esta información es devuelta
SQL Los fundamentos del lenguaje
Introducción 1. Un poco de historia 11 2. Las normas SQL 12 3. Descripción rápida del modelo relacional 14 3.1 Principales conceptos del modelo relacional 15 3.2 Principales reglas 16 4. Los operadores
Un nombre de usuario de 30 caracteres o menos, sin caracteres especiales y que inicie con una letra.
Unidad IV: Seguridad 4.1 Tipos de usuario El objetivo de la creación de usuarios es establecer una cuenta segura y útil, que tenga los privilegios adecuados y los valores por defecto apropiados Para acceder
Introducción. Componentes de un SI. Sistema de Información:
Introducción. Sistema de Información: Conjunto de elementos relacionados entre sí de acuerdo a ciertas reglas, que aporta a la organización la información necesaria para el cumplimiento de sus fines, para
Microsoft Access proporciona dos métodos para crear una Base de datos.
Operaciones básicas con Base de datos Crear una Base de datos Microsoft Access proporciona dos métodos para crear una Base de datos. Se puede crear una base de datos en blanco y agregarle más tarde las
GUIA COMPLEMENTARIA PARA EL USUARIO DE AUTOAUDIT. Versión N 02 Fecha: 2011-Febrero Apartado: Archivos Anexos ARCHIVOS ANEXOS
ARCHIVOS ANEXOS Son los documentos, hojas de cálculo o cualquier archivo que se anexa a las carpetas, subcarpetas, hallazgos u otros formularios de papeles de trabajo. Estos archivos constituyen la evidencia
Maestría en Bioinformática. Bases de Datos y Sistemas de Información. Diseño Lógico. Ing. Alfonso Vicente, PMP [email protected].
Maestría en Bioinformática Bases de Datos y Sistemas de Información Diseño Lógico Ing. Alfonso Vicente, PMP [email protected] Agenda Conceptos Herramientas Diseño lógico Modelo Relacional Las
Guía de implementación Softland en SQL Server 2012. Versión 1.0
Guía de implementación Softland en SQL Server 2012 Versión 1.0 Tabla de Contenido 1. INTRODUCCIÓN... 2 2. MIGRACIÓN A SQL SERVER 2012... 2 2.1 Ausencia de Compatibilidad con versiones anteriores... 2 3.
Tema 1. Conceptos básicos
Conceptos básicos Sistema de Gestión de Bases de Datos, SGBD (DBMS, Database Management System): software diseñado específicamente para el mantenimiento y la explotación de grandes conjuntos de datos 1
Introducción a los sistemas de bases de datos
Introducción a los sistemas de bases de datos Bases de datos II: Tema 1 Bases de Datos II: Esther de Ves / Vicente Cerverón - Tema 1 1 Estructura del tema Qué es un sistema SGBD? Por qué utilizar un SGBD?
Universidad de Colima Facultad de Ingeniería Mecánica y Eléctrica. Base de Datos I. Maestra: Martha E. Evangelista Salazar
Universidad de Colima Facultad de Ingeniería Mecánica y Eléctrica Base de Datos I Maestra: Martha E. Evangelista Salazar Introducción a los conceptos de Bases de Datos a).- Definiciones básicas sobre bases
ARQUITECTURA DE DISTRIBUCIÓN DE DATOS
4 ARQUITECTURA DE DISTRIBUCIÓN DE DATOS Contenido: Arquitectura de Distribución de Datos 4.1. Transparencia 4.1.1 Transparencia de Localización 4.1.2 Transparencia de Fragmentación 4.1.3 Transparencia
TEMA 2.- EL SISTEMA GESTOR DE BASES DE DATOS.
TEMA 2.- EL SISTEMA GESTOR DE BASES DE DATOS. Concepto y Funciones del SGBD. Lenguajes de los SGBD. Niveles de Abstracción. Arquitectura ANSI/SPARC. Componentes del SGBD. 1. Concepto y Funciones del SGBD.
Manual de uso de la plataforma para monitores. CENTRO DE APOYO TECNOLÓGICO A EMPRENDEDORES -bilib
Manual de uso de la plataforma para monitores CENTRO DE APOYO TECNOLÓGICO A EMPRENDEDORES -bilib [Manual de uso de la plataforma para monitores] 1. Licencia Autor del documento: Centro de Apoyo Tecnológico
Resumen. Funcionamiento. Advertencia
Resumen Módulo: Librería: IMPEXP.DLL Acoplable a: FactuCont 5, versiones monopuesto y red Descripción: Permite exportar datos de documentos, clientes, proveedores y artículos en un solo fichero para poder
PRÁCTICA B2. Definición y modificación de datos en SQL
3º Ingeniero Técnico en Informática de Sistemas Facultad de Informática Asignatura: Fundamentos de Bases de Datos Curso: 2007/08 PRÁCTICA B2. Definición y modificación de datos en SQL Objetivos Construir
GENERALIDADES DE BASES DE DATOS
GENERALIDADES DE BASES DE DATOS A fin de evitar que idénticos datos se encuentren repetidos en múltiples archivos, parece necesario que los comunes se almacenen en un archivo único y que este archivo sea
Una base de datos es una colección de información ordenada e interrelacionada que es de importancia para una empresa.
BASES DE DATOS Una base de datos es una colección de información ordenada e interrelacionada que es de importancia para una empresa. La creación de una base de datos debe ser realizada cuidadosamente procurando
Bases de datos relacionales y el modelo entidad-relación
Bases de datos relacionales y el modelo entidad-relación Qué es una base de datos relacional? El sistema gestor de bases de datos El modelo entidad-relación entidad, atributos y elementos (tablas, columnas
Oracle Database 10g: Taller de Administración I 1-2
Oracle Database 10g: Taller de Administración I 1-2 Marco de gestión Hay tres componentes principales del marco de gestión de la BD Oracle: Labasededatosylainstanciaqueseestágestionando Un listener que
ADMINISTRACIÓN DE BASES DE DATOS DISTRIBUIDAS
5 ADMINISTRACIÓN DE BASES DE DATOS DISTRIBUIDAS Contenido: 5.1 Conceptos Generales Administración de Bases de Datos Distribuidas 5.1.1 Administración la Estructura de la Base de Datos 5.1.2 Administración
Capítulo 12: Indexación y asociación
Capítulo 12: Indexación y asociación Conceptos básicos Índices ordenados Archivos de índice de árbol B+ Archivos de índice de árbol B Asociación estática Asociación dinámica Comparación entre indexación
Introducción. Ciclo de vida de los Sistemas de Información. Diseño Conceptual
Introducción Algunas de las personas que trabajan con SGBD relacionales parecen preguntarse porqué deberían preocuparse del diseño de las bases de datos que utilizan. Después de todo, la mayoría de los
CAPÍTULO 2 Sistemas De Base De Datos Multiusuarios
CAPÍTULO 2 Sistemas De De Multiusuarios Un sistema multiusuario es un sistema informático que da servicio, manera concurrente, a diferentes usuarios mediante la utilización compartida sus recursos. Con
CAPITULO 9. Diseño de una Base de Datos Relacional Distribuida
9.1 Operaciones CAPITULO 9 Diseño de una Base de Datos Relacional Distribuida Las consultas distribuidas obtienen acceso a datos de varios orígenes de datos homogéneos o heterogéneos. Estos orígenes de
Sintaxis: CURSOR nombre_cursor[(param1 [IN] tipo1,... )] IS consulta ;
7. CONCEPTOS AVANZADOS DE CURSORES EXPLICITOS En este capítulo veremos algunas cosas bastante útiles respecto a los cursores explícitos, como pueden ser los cursores con parámetros (que nos permitirán
2. ESTUDIO DE INDICES
Asignatura de Administración de Bases de Datos Curso 2011/2012 Pág. 1 PRÁCTICA DE ADMINISTRACIÓN DE BASES DE DATOS Una compañía de salud gestiona datos relativos a las consultas médicas a pacientes por
ICARO MANUAL DE LA EMPRESA
ICARO MANUAL DE LA EMPRESA 1. ENTRANDO EN ICARO Para acceder al Programa ICARO tendremos que entrar en http://icaro.ual.es Figura 1 A continuación os aparecerá la página de Inicio del aplicativo ICARO.
Aspectos Básicos de Networking
Aspectos Básicos de Networking ASPECTOS BÁSICOS DE NETWORKING 1 Sesión No. 4 Nombre: Capa de transporte del modelo OSI Objetivo: Al término de la sesión el participante aplicará las principales características
T12 Vistas y tablas temporales
1 de 9 17/05/2013 14:01 Lecciones SQL > T12 Vistas y tablas temporales En esta sesión vamos a mostrar dos tipos de objetos de uso habitual en cualquier SGBD: las vistas y las tablas temporales. Mientras
Conceptos básicos Oracle 10g Introducción - Administración de Oracle - Orasite.com
1. Objetivos El objetivo de este artículo es describir brevemente los siguientes conceptos básicos a modo de familiarización con las bases de datos ORACLE. - Describir brevemente en qué consiste el modelo
4. Programación Paralela
4. Programación Paralela La necesidad que surge para resolver problemas que requieren tiempo elevado de cómputo origina lo que hoy se conoce como computación paralela. Mediante el uso concurrente de varios
ADMINISTRACIÓN DE BASES DE DATOS PREGUNTAS TEST SON SOLUCIÓN
ADMINISTRACIÓN DE BASES DE DATOS PREGUNTAS TEST SON SOLUCIÓN 1. En el SGBD Oracle. Cuál de las siguientes afirmaciones es correcta? a) Los usuarios con el rol de administrador de la base de datos son SYS,
A.1. Definiciones de datos en SQL
A.1. Definiciones de datos en SQL Las Sentencias del lenguaje de definición de datos (DDL) que posee SQL operan en base a tablas. Las Principales sentencias DDL son las siguientes: CREATE TABLE DROP TABLE
Oficina Online. Manual del administrador
Oficina Online Manual del administrador 2/31 ÍNDICE El administrador 3 Consola de Administración 3 Administración 6 Usuarios 6 Ordenar listado de usuarios 6 Cambio de clave del Administrador Principal
Guías _SGO. Gestione administradores, usuarios y grupos de su empresa. Sistema de Gestión Online
Guías _SGO Gestione administradores, usuarios y grupos de su empresa Sistema de Gestión Online Índice General 1. Parámetros Generales... 4 1.1 Qué es?... 4 1.2 Consumo por Cuentas... 6 1.3 Días Feriados...
El lenguaje de manipulación de datos (DML) es una parte fundamental de SQL.
GUIA DE LABORATORIO # 5 Nombre de la Practica: Manipulación de datos Lugar de ejecución: Centro de Computo MATERIA: Base de Datos II CICLO: 02-2012 I. OBJETIVOS ESPECIFICOS Qué el estudiante: Manipule
Capítulo 9. Archivos de sintaxis
Capítulo 9 Archivos de sintaxis El SPSS permite generar y editar archivos de texto con sintaxis SPSS, es decir, archivos de texto con instrucciones de programación en un lenguaje propio del SPSS. Esta
COPIAS DE SEGURIDAD AUTOMÁTICAS DE DIRECCIONES CALLEÇPAÑA
COPIAS DE SEGURIDAD AUTOMÁTICAS DE DIRECCIONES CALLEÇPAÑA Autor: Carlos Javier Martín González. Licenciado en Física Teórica por la Universidad Autónoma de Madrid. Analista programador y funcional. Desarrollador
18 y 19 Sistemas de Archivos Distribuidos y Tarea 05
18 y 19 Sistemas de Archivos Distribuidos y Tarea 05 Prof. Edgardo Adrián Franco Martínez http://computacion.cs.cinvestav.mx/~efranco [email protected] Estructuras de datos (Prof. Edgardo A. Franco)
Base de datos en Excel
Base de datos en Excel Una base datos es un conjunto de información que ha sido organizado bajo un mismo contexto y se encuentra almacenada y lista para ser utilizada en cualquier momento. Las bases de
2.6.2.- Aplicaciones de las vistas. 2.6.1.- Concepto de vista. 2.6.3.- Vistas en SQL. 2.6.3.- Vistas en SQL.
2.6.1.- Concepto de vista. Una vista es una tabla derivada de otras tablas (básicas o virtuales). Una vista se caracteriza porque: Se considera que forma parte del esquema externo. Una vista es una tabla
Elementos requeridos para crearlos (ejemplo: el compilador)
Generalidades A lo largo del ciclo de vida del proceso de software, los productos de software evolucionan. Desde la concepción del producto y la captura de requisitos inicial hasta la puesta en producción
INTRODUCCION. entidades. Modelo lógico de la base de datos. Matricula. carne. codigo_curso. año semestre nota. propiedades
INTRODUCCION Uno de los objetivos del curso es modelar a través de un diagrama las estructuras lógicas requeridas para almacenar los datos y resolver las consultas del sistema información que requiera
Acronis License Server. Guía del usuario
Acronis License Server Guía del usuario TABLA DE CONTENIDO 1. INTRODUCCIÓN... 3 1.1 Generalidades... 3 1.2 Política de licencias... 3 2. SISTEMAS OPERATIVOS COMPATIBLES... 4 3. INSTALACIÓN DE ACRONIS LICENSE
UAM MANUAL DE EMPRESA. Universidad Autónoma de Madrid
MANUAL DE EMPRESA Modo de entrar en ÍCARO Para comenzar a subir una oferta de empleo, el acceso es a través del siguiente enlace: http://icaro.uam.es A continuación, aparecerá la página de inicio de la
Introducción a los Sistemas de Gestión de Bases de Datos
a los Sistemas de Gestión de Bases de Datos Servicios y Aplicaciones Telemáticas [email protected] Noviembre de 2008 c 2008 Grupo de Sistemas y Comunicaciones. Algunos derechos reservados.
CONSULTAS CON SQL. 3. Hacer clic sobre el botón Nuevo de la ventana de la base de datos. Aparecerá el siguiente cuadro de diálogo.
CONSULTAS CON SQL 1. Qué es SQL? Debido a la diversidad de lenguajes y de bases de datos existentes, la manera de comunicar entre unos y otras sería realmente complicada a gestionar de no ser por la existencia
BASE DE DATOS RELACIONALES
BASE DE DATOS RELACIONALES Una base de datos relacional es una base de datos que cumple con el modelo relacional, el cual es el modelo más utilizado en la actualidad para implementar bases de datos ya
Tutorial: Primeros Pasos con Subversion
Tutorial: Primeros Pasos con Subversion Introducción Subversion es un sistema de control de versiones open source. Corre en distintos sistemas operativos y su principal interfaz con el usuario es a través
APOLO GESTION INTEGRAL.
APOLO GESTION INTEGRAL. APOLO Gestión es una aplicación realizada en Visual Studio, y apoyada en una potente base de datos SQL, que le proporciona grandes ventajas a la hora de trabajar tanto sobre redes
Unidad didáctica 2: Metodologías de desarrollo de Bases de Datos. Unidad didáctica 1: Fase de análisis de requisitos Modelo E/R
índice Módulo A Unidad didáctica 1: Introducción a las Bases de Datos Unidad didáctica 2: Metodologías de desarrollo de Bases de Datos 3 19 Módulo B Unidad didáctica 1: Fase de análisis de requisitos Modelo
COMANDOS DE SQL, OPERADORES, CLAUSULAS Y CONSULTAS SIMPLES DE SELECCIÓN
COMANDOS DE SQL, OPERADORES, CLAUSULAS Y CONSULTAS SIMPLES DE SELECCIÓN Tipos de datos SQL admite una variada gama de tipos de datos para el tratamiento de la información contenida en las tablas, los tipos
Sub consultas avanzadas
Sub consultas avanzadas Objetivo Después de completar este capítulo conocerá lo siguiente: Escribir una consulta de múltiples columnas Describir y explicar el comportamiento de las sub consultas cuando
5(&83(5$&,Ð1'(&$Ì'$6'(/6,67(0$
5(&83(5$&,Ð1'(&$Ì'$6'(/6,67(0$ Siempre que se introduce una transacción T en el SGBD para ejecutarla, éste debe asegurarse de... a) que todas las operaciones de T se completen con éxito y su efecto quede
SISTEMA DE GESTIÓN DE BASE DE DATOS (Database Management System (DBMS))
SISTEMA DE GESTIÓN DE BASE DE DATOS (Database Management System (DBMS)) Los sistemas de gestión de bases de datos son un tipo de software muy específico, dedicado a servir de interfaz entre la base de
- Bases de Datos - - Diseño Físico - Luis D. García
- Diseño Físico - Luis D. García Abril de 2006 Introducción El diseño de una base de datos está compuesto por tres etapas, el Diseño Conceptual, en el cual se descubren la semántica de los datos, definiendo
TEMA 6: MODIFICACIÓN DE LA BASE DE DATOS EN SQL
TEMA 6: MODIFICACIÓN DE LA BASE DE DATOS EN SQL 5.6 MODIFICACIÓN DE LA BASE DE DATOS SQL posee comandos destinados también para modificar la base de datos, entre estos se tienen operaciones de borrado,
MANUALITO MS-SQL SERVER
MANUALITO MS-SQL SERVER Contenido 1. Crear Store Procedures en MS SQL Server... 1 2. Crear Triggers en MS SQL Server... 5 3. Crear Vistas en MS SQL Server... 9 1. Crear Store Procedures en MS SQL Server
GESTOR DE LICENCIAS Ayuda
GESTOR DE LICENCIAS Ayuda SUMARIO SUMARIO Que es el Gestor de licencias... 1 Requisitos que debe tener el terminal donde se instale el Gestor de licencias... 3 Puedo tener el servidor y visor de licencias
WINDOWS 2008 7: COPIAS DE SEGURIDAD
1.- INTRODUCCION: WINDOWS 2008 7: COPIAS DE SEGURIDAD Las copias de seguridad son un elemento fundamental para que el trabajo que realizamos se pueda proteger de aquellos problemas o desastres que pueden
La ventana de Microsoft Excel
Actividad N 1 Conceptos básicos de Planilla de Cálculo La ventana del Microsoft Excel y sus partes. Movimiento del cursor. Tipos de datos. Metodología de trabajo con planillas. La ventana de Microsoft
Oracle 12c DISEÑO Y PROGRAMACIÓN
Oracle 12c Se estudia el servidor de bases de datos empresarial Oracle 12c, centrándose especialmente en el punto de vista de un diseñador o programador de bases de datos, pero explicando también cómo
Estructuras de Sistemas Operativos
Estructuras de Sistemas Operativos Definicion de Sistema Operativos Un sistema operativo es un programa que actua como inter entre el usuario y el hardware de un computador y su proposito es proporcionar
Unidad III: Lenguaje de manipulación de datos (DML) 3.1 Inserción, eliminación y modificación de registros
Unidad III: Lenguaje de manipulación de datos (DML) 3.1 Inserción, eliminación y modificación de registros La sentencia INSERT permite agregar nuevas filas de datos a las tablas existentes. Está sentencia
REPOSITORIOS. Ing. Ismael Castañeda Fuentes, MSc Grupo de Investigación UNBD Universidad Nacional de Colombia Marzo de 2011
REPOSITORIOS Ing. Ismael Castañeda Fuentes, MSc Grupo de Investigación UNBD Universidad Nacional de Colombia Marzo de 2011 Objetivos Conocer las ventajas de usar un repositorio, en el desarrollo de un
Componentes de una BD
Componentes de una BD Cada BD Oracle en ejecución está asociada a una instancia Oracle. Cuando se arranca el servidor, el software de Oracle reserva una zona de memoria compartida denominada System Global
LABORATORIO 10. Concurrencia y bloqueos en el SMBD Oracle
LABORATORIO 10. Concurrencia y bloqueos en el SMBD Oracle GUÍA DE LABORATORIO Nº 10 Actividad de Proyecto No. 5: Desarrollar mantenimiento preventivo, correctivo o proactivo para garantizar niveles de
Ejercicios: Administración de Bases de Datos en ORACLE
Ejercicios: Administración de Bases de Datos en ORACLE BDA-1 Arquitectura de ORACLE Ejercicios: 1. Si un usuario se conecta al SQL*Plus y realiza un UPDATE sobre la tabla Empleados. Qué proceso ejecuta
PROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación. II MODELOS y HERRAMIENTAS UML. II.2 UML: Modelado de casos de uso
PROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación II MODELOS y HERRAMIENTAS UML 1 1 Modelado de casos de uso (I) Un caso de uso es una técnica de modelado usada para describir lo que debería hacer
1.- MENU DE CONTROL O MENU VENTANA: permite cerrar la ventana cambiarla de tamaño y pasar a otra ventana
EXCEL PRÓLOGO Microsoft Excel es una hoja de cálculo de gran capacidad y fácil uso. Excel no solo es una hoja de calculo, sino también tiene capacidad para diseñar bases de datos (listas) de forma totalmente
ELEMENTO I INTRODUCCION A LOS SISTEMAS DE BASES DE DATOS
Base de Datos ELEMENTO I INTRODUCCION A LOS SISTEMAS DE BASES DE DATOS Una base de datos es un conjunto de elementos de datos que se describe a sí mismo, con relaciones entre esos elementos, que presenta
CAPÍTULO 3 Servidor de Modelo de Usuario
CAPÍTULO 3 Servidor de Modelo de Usuario Para el desarrollo del modelado del estudiante se utilizó el servidor de modelo de usuario desarrollado en la Universidad de las Américas Puebla por Rosa G. Paredes
Selección de los puntos de montaje
PARTICIONES PARA LINUX Selección de los puntos de montaje Tanto para aquellos que vayan a instalar ahora, como para quienes quieran cambiar el tamaño de una partición o formatear este apunte (resumen de
Práctica 5. Curso 2014-2015
Prácticas de Seguridad Informática Práctica 5 Grado Ingeniería Informática Curso 2014-2015 Universidad de Zaragoza Escuela de Ingeniería y Arquitectura Departamento de Informática e Ingeniería de Sistemas
Estructuras de Datos y Algoritmos Tecnólogo en Informática
Estructuras de Datos y Algoritmos Tecnólogo en Informática INSTRUCTIVO DEL COMANDO MAKE ESTRUCTURAS DE DATOS Y ALGORITMOS - TECNÓLOGO EN INFORMÁTICA 1 Contenido Introducción... 3 El archivo makefile...
Arquitectura de sistema de alta disponibilidad
Mysql Introducción MySQL Cluster esta diseñado para tener una arquitectura distribuida de nodos sin punto único de fallo. MySQL Cluster consiste en 3 tipos de nodos: 1. Nodos de almacenamiento, son los
Unidad 1. Fundamentos en Gestión de Riesgos
1.1 Gestión de Proyectos Unidad 1. Fundamentos en Gestión de Riesgos La gestión de proyectos es una disciplina con la cual se integran los procesos propios de la gerencia o administración de proyectos.
Implantar el iphone y el ipad Apple Configurator
Implantar el iphone y el ipad Apple Configurator Los dispositivos ios se pueden configurar para su implantación en empresas mediante una gran variedad de herramientas y métodos. Los usuarios finales pueden
