2.- Lenguaje De Manipulación De Datos (Estructura e Integridad De Bases De Datos
+23
marisol perez
thanahi
Judith Benitez Charco
anyytta
Jenesis Reyes Saucedo
hoguer tapia
tomas lopez perez
ixhel
kike leon
pablodelgadogomez
alma rosa
karina acuña santana
AngelesAT
horfanel calles juarez
addicto007
CINTHIA CADENA PEREZ
RAMIRO BALDOVINOS
sinay vargas
Isidro Antonio Solano
conitha
ISAI RENDON QUITERIO1
miguelTL
Admin
27 participantes
Página 3 de 8. • 1, 2, 3, 4, 5, 6, 7, 8
MI RESPUESTA AL REACTIVO #1 BY PABLO
1) Investigar algunos conceptos básicos de: "Estructura e Integridad de bases de datos", así como: "comandos básicos del LMD para poder realizar la Creación de bases de datos y la Definición del esquema de integridad. Debe indicar que tipo de fuentes (Libros, revistas, etc.) y TICs (Wikis, Foros, Edu-Blogs, WebQuest, EVE-A) se han involucrado para concretar la investigación. Y de acuerdo con lo investigado, debe elaborar un resumen o tabla comparativa o mapa conceptual o diagrama que permita representar (en texto o gráficamente) los conceptos clave, el cual debe compartir en este foro.
Estos son algunos conceptos básicos que estaremos viendo a lo largo de la Unidad 2: Estructura e integridad de bases de datos.
Integridad de datos: se refiere al estado de corrección y completitud de los datos ingresados en una base de datos.
Integridad de entidad: define una fila como entidad única para una tabla determinada. La integridad de entidad exige la integridad de las columnas de los identificadores o la clave principal de una tabla, mediante índices y restricciones UNIQUE, o restricciones PRIMARY KEY.
Integridad de dominio: viene dada por la validez de las entradas para una columna determinada. Puede exigir la integridad de dominio para restringir el tipo mediante tipos de datos, el formato mediante reglas y restricciones CHECK, o el intervalo de valores posibles mediante restricciones FOREIGN KEY, restricciones CHECK, definiciones DEFAULT, definiciones NOT NULL y reglas.
Estructura de la base de datos: hace referencia a los tipos de datos, los vínculos o relaciones y las restricciones que deben cumplir esos datos (integridad de datos y redundancia de datos).
Integridad referencial: protege las relaciones definidas entre las tablas cuando se crean o se eliminan filas.
lenguaje de Manipulación de Datos (Data Manipulation Languaje (DML): es un lenguaje proporcionado por el sistema de gestión de bases de datos que permite a los usuarios de la misma llevar a cabo las tareas de consulta o manipulación de los datos, organizados por el modelo de datos adecuado.
_______________________________________________________________________________________________________
INSERT: Añade registros por lotes de datos (filas) en una tabla en una única operación.
INSERT INTO nombre-tabla [({nombre-columna(s),})] VALUES ({expresión,})
Ej: Ingresar la carrera con código 150
INSERT INTO carrera VALUES (150,'Ingenieria de Sistemas');
UPDATE: Modifica los campos indicados con el valor especificado en la sentencia.
UPDATE nombre-tabla SET {nombre-columna = expresión,} [WHERE condición];
Ej: Modificar el patrimonio del estudiante cuyo código es 98115310
UPDATE estudiante SET pat_est = 15000000 WHERE cod_est = 98115310;
DELETE: Elimina los registros (filas) indicados en la sentencia.
DELETE FROM nombre-tabla [WHERE condición];
Ej: Eliminar el estudiante cuyo código es 98115310
DELETE FROM estudiante WHERE cod_est = 98115310;
Si se omite la opcion WHERE eliminara todas las filas de la tabla estudiante.
FUENTES CONSULTADAS
http://chiokapy.blogspot.mx/2011/08/comandos-de-lmd.html
http://www.alegsa.com.ar/Dic/estructura%20de%20la%20base%20de%20datos.php
http://www.alegsa.com.ar/Dic/integridad%20de%20datos.php
http://msdn.microsoft.com/es-mx/library/ms184276(v=sql.105).aspx
ESPERO LES SIRVA DE ALGO LA INFORMACIÓN.
PABLO DELGADO
Estos son algunos conceptos básicos que estaremos viendo a lo largo de la Unidad 2: Estructura e integridad de bases de datos.
C O N C E P T O S
Integridad de datos: se refiere al estado de corrección y completitud de los datos ingresados en una base de datos.
Integridad de entidad: define una fila como entidad única para una tabla determinada. La integridad de entidad exige la integridad de las columnas de los identificadores o la clave principal de una tabla, mediante índices y restricciones UNIQUE, o restricciones PRIMARY KEY.
Integridad de dominio: viene dada por la validez de las entradas para una columna determinada. Puede exigir la integridad de dominio para restringir el tipo mediante tipos de datos, el formato mediante reglas y restricciones CHECK, o el intervalo de valores posibles mediante restricciones FOREIGN KEY, restricciones CHECK, definiciones DEFAULT, definiciones NOT NULL y reglas.
Estructura de la base de datos: hace referencia a los tipos de datos, los vínculos o relaciones y las restricciones que deben cumplir esos datos (integridad de datos y redundancia de datos).
Integridad referencial: protege las relaciones definidas entre las tablas cuando se crean o se eliminan filas.
lenguaje de Manipulación de Datos (Data Manipulation Languaje (DML): es un lenguaje proporcionado por el sistema de gestión de bases de datos que permite a los usuarios de la misma llevar a cabo las tareas de consulta o manipulación de los datos, organizados por el modelo de datos adecuado.
_______________________________________________________________________________________________________
COMANDOS UTILIZADOS EN DML
INSERT: Añade registros por lotes de datos (filas) en una tabla en una única operación.
INSERT INTO nombre-tabla [({nombre-columna(s),})] VALUES ({expresión,})
Ej: Ingresar la carrera con código 150
INSERT INTO carrera VALUES (150,'Ingenieria de Sistemas');
UPDATE: Modifica los campos indicados con el valor especificado en la sentencia.
UPDATE nombre-tabla SET {nombre-columna = expresión,} [WHERE condición];
Ej: Modificar el patrimonio del estudiante cuyo código es 98115310
UPDATE estudiante SET pat_est = 15000000 WHERE cod_est = 98115310;
DELETE: Elimina los registros (filas) indicados en la sentencia.
DELETE FROM nombre-tabla [WHERE condición];
Ej: Eliminar el estudiante cuyo código es 98115310
DELETE FROM estudiante WHERE cod_est = 98115310;
Si se omite la opcion WHERE eliminara todas las filas de la tabla estudiante.
FUENTES CONSULTADAS
http://chiokapy.blogspot.mx/2011/08/comandos-de-lmd.html
http://www.alegsa.com.ar/Dic/estructura%20de%20la%20base%20de%20datos.php
http://www.alegsa.com.ar/Dic/integridad%20de%20datos.php
http://msdn.microsoft.com/es-mx/library/ms184276(v=sql.105).aspx
ESPERO LES SIRVA DE ALGO LA INFORMACIÓN.
PABLO DELGADO
pablodelgadogomez- Mensajes : 28
Fecha de inscripción : 29/01/2013
posible respuesta al reactivo 2
PROCEDIMIENTO ALMACENADO
Un procedimiento almacenado (stored procedure en inglés) es un programa (o procedimiento) el cual es almacenado físicamente en una base de datos. Su implementación varía de un gestor de bases de datos a otro. La ventaja de un procedimiento almacenado es que al ser ejecutado, en respuesta a una petición de usuario, es ejecutado directamente en el motor de bases de datos, el cual usualmente corre en un servidor separado. Como tal, posee acceso directo a los datos que necesita manipular y sólo necesita enviar sus resultados de regreso al usuario, deshaciéndose de la sobrecarga resultante de comunicar grandes cantidades de datos salientes y entrantes.
Usos típicos para procedimientos almacenados
incluyen la validación de datos siendo integrados a la estructura de base de datos (los procedimientos almacenados utilizados para este propósito a menudo son llamados disparadores; triggers en inglés), o encapsular un proceso grande y complejo. El último ejemplo generalmente ejecutará más rápido como un procedimiento almacenado que de haber sido implementado como, por ejemplo, un programa corriendo en el sistema cliente y comunicándose con la base de datos mediante el envío de consultas SQL y recibiendo sus resultados.
Los procedimientos pueden ser ventajosos: Cuando una base de datos es manipulada desde muchos programas externos. Al incluir la lógica de la aplicación en la base de datos utilizando procedimientos almacenados, la necesidad de embeber la misma lógica en todos los programas que acceden a los datos es reducida. Esto puede simplificar la creación y, particularmente, el mantenimiento de los programas involucrados.
Podemos ver un claro ejemplo de estos procedimientos cuando requerimos realizar una misma operación en un servidor dentro de algunas o todas las bases de datos y a la vez dentro de todas o algunas de las tablas de las bases de datos del mismo. Para ello podemos utilizar a los Procedimientos almacenados auto creables que es una forma de generar ciclos redundantes a través de los procedimientos almacenados
Usos
Los usos 'típicos' de los procedimientos almacenados se aplican en la validación de datos, integrados dentro de la estructura del banco de datos. Los procedimientos almacenados usados con tal propósito se llaman comúnmente disparadores, o triggers. Otro uso común es la 'encapsulación' de un API para un proceso complejo o grande que podría requerir la 'ejecución' de varias consultas SQL, tales como la manipulación de un 'dataset' enorme para producir un resultado resumido.
También pueden ser usados para el control de gestión de operaciones, y ejecutar procedimientos almacenados dentro de una transacción de tal manera que las transacciones sean efectivamente transparentes para ellos.
Ventajas
La ventaja de un procedimiento almacenado, en respuesta a una petición de usuario, está directamente bajo el control del motor del gestor de bases de datos, que corre generalmente en un servidor distinto del gestor de bases de datos aumentando con ello la rapidez de procesamiento de las peticiones del gestor de bases de datos. El servidor de la base de datos tiene acceso directo a los datos necesarios para manipular y sólo necesita enviar el resultado final al usuario. Los procedimientos almacenados pueden permitir que la lógica del negocio se encuentre como un API en la base de datos, que pueden simplificar la gestión de datos y reducir la necesidad de codificar la lógica en el resto de los programas cliente. Esto puede reducir la probabilidad de que los datos se corrompan por el uso de programas clientes defectuosos o erróneos. De este modo, el motor de base de datos puede asegurar la integridad de los datos y su consistencia con la ayuda de procedimientos almacenados. Algunos afirman que las bases de datos deben ser utilizadas para el almacenamiento de datos solamente, y que la lógica de negocio sólo debería aplicarse en la capa de negocio de código, a través de aplicaciones cliente que deban acceder a los datos. Sin embargo, el uso de procedimientos almacenados no se opone a la utilización de una capa de negocio.
Usos típicos para procedimientos almacenados
incluyen la validación de datos siendo integrados a la estructura de base de datos (los procedimientos almacenados utilizados para este propósito a menudo son llamados disparadores; triggers en inglés), o encapsular un proceso grande y complejo. El último ejemplo generalmente ejecutará más rápido como un procedimiento almacenado que de haber sido implementado como, por ejemplo, un programa corriendo en el sistema cliente y comunicándose con la base de datos mediante el envío de consultas SQL y recibiendo sus resultados.
Los procedimientos pueden ser ventajosos: Cuando una base de datos es manipulada desde muchos programas externos. Al incluir la lógica de la aplicación en la base de datos utilizando procedimientos almacenados, la necesidad de embeber la misma lógica en todos los programas que acceden a los datos es reducida. Esto puede simplificar la creación y, particularmente, el mantenimiento de los programas involucrados.
Podemos ver un claro ejemplo de estos procedimientos cuando requerimos realizar una misma operación en un servidor dentro de algunas o todas las bases de datos y a la vez dentro de todas o algunas de las tablas de las bases de datos del mismo. Para ello podemos utilizar a los Procedimientos almacenados auto creables que es una forma de generar ciclos redundantes a través de los procedimientos almacenados
Usos
Los usos 'típicos' de los procedimientos almacenados se aplican en la validación de datos, integrados dentro de la estructura del banco de datos. Los procedimientos almacenados usados con tal propósito se llaman comúnmente disparadores, o triggers. Otro uso común es la 'encapsulación' de un API para un proceso complejo o grande que podría requerir la 'ejecución' de varias consultas SQL, tales como la manipulación de un 'dataset' enorme para producir un resultado resumido.
También pueden ser usados para el control de gestión de operaciones, y ejecutar procedimientos almacenados dentro de una transacción de tal manera que las transacciones sean efectivamente transparentes para ellos.
Ventajas
La ventaja de un procedimiento almacenado, en respuesta a una petición de usuario, está directamente bajo el control del motor del gestor de bases de datos, que corre generalmente en un servidor distinto del gestor de bases de datos aumentando con ello la rapidez de procesamiento de las peticiones del gestor de bases de datos. El servidor de la base de datos tiene acceso directo a los datos necesarios para manipular y sólo necesita enviar el resultado final al usuario. Los procedimientos almacenados pueden permitir que la lógica del negocio se encuentre como un API en la base de datos, que pueden simplificar la gestión de datos y reducir la necesidad de codificar la lógica en el resto de los programas cliente. Esto puede reducir la probabilidad de que los datos se corrompan por el uso de programas clientes defectuosos o erróneos. De este modo, el motor de base de datos puede asegurar la integridad de los datos y su consistencia con la ayuda de procedimientos almacenados. Algunos afirman que las bases de datos deben ser utilizadas para el almacenamiento de datos solamente, y que la lógica de negocio sólo debería aplicarse en la capa de negocio de código, a través de aplicaciones cliente que deban acceder a los datos. Sin embargo, el uso de procedimientos almacenados no se opone a la utilización de una capa de negocio.
Trigger
Un trigger (o disparador) en una Base de datos, es un procedimiento que se ejecuta cuando se cumple una condición establecida al realizar una operación. Dependiendo de la base de datos, los triggers pueden ser de inserción (INSERT), actualización (UPDATE) o borrado (DELETE). Algunas bases de datos pueden ejecutar triggers al crear, borrar o editar usuarios, tablas, bases de datos u otros objetos.
USOS
Son usados para mejorar la administración de la Base de datos, sin necesidad de contar con que el usuario ejecute la sentencia de SQL. Además, pueden generar valores de columnas, previene errores de datos, sincroniza tablas, modifica valores de una vista, etc. Permite implementar programas basados en paradigma lógico (sistemas expertos, deducción).
COMPONENTES PRINCIPALESLES
La estructura básica de un trigger es:
Llamada de activación: es la sentencia que permite "disparar" el código a ejecutar.
Restricción: es la condición necesaria para realizar el código. Esta restricción puede ser de tipo condicional o de tipo nulidad.
Acción a ejecutar: es la secuencia de instrucciones a ejecutar una vez que se han cumplido las condiciones iniciales.
Llamada de activación: es la sentencia que permite "disparar" el código a ejecutar.
Restricción: es la condición necesaria para realizar el código. Esta restricción puede ser de tipo condicional o de tipo nulidad.
Acción a ejecutar: es la secuencia de instrucciones a ejecutar una vez que se han cumplido las condiciones iniciales.
TIPOS
Existen dos tipos de disparadores que se clasifican según la cantidad de ejecuciones a realizar:
Row Triggers (o Disparadores de fila): son aquellas que se ejecutaran n-veces si se llama n-veces desde la tabla asociada al trigger
Statement Triggers (o Disparadores de secuencia): son aquellos que sin importar la cantidad de veces que se cumpla con la condición, su ejecución es única.
Pueden ser de sesión y almacenados; pero no son de fiar
Row Triggers (o Disparadores de fila): son aquellas que se ejecutaran n-veces si se llama n-veces desde la tabla asociada al trigger
Statement Triggers (o Disparadores de secuencia): son aquellos que sin importar la cantidad de veces que se cumpla con la condición, su ejecución es única.
Pueden ser de sesión y almacenados; pero no son de fiar
FUENTES:
http://es.wikipedia.org/wiki/Trigger_(base_de_datos)
http://es.wikipedia.org/wiki/Procedimiento_almacenado
tomas lopez perez- Mensajes : 22
Fecha de inscripción : 11/02/2013
4) Investigar como podría diseñar e implementar vistas en base de datos distintas. Comparta en este foro su código fuente en Lenguaje SQL.
para crear una vista en SQL SERVER nesecitamos de los siguientes comandos:
create view (nombre de la vista) as
select (agregamos los campos)
from (tabla)
where (lo que queremos que apararesca en nuestra vista)
despues daremos click en actualizar
y seleccionaremos nuestros comandos y daremos click en nuestra carpeta vista y ahi aparecera nuestra vista
create view (nombre de la vista) as
select (agregamos los campos)
from (tabla)
where (lo que queremos que apararesca en nuestra vista)
despues daremos click en actualizar
y seleccionaremos nuestros comandos y daremos click en nuestra carpeta vista y ahi aparecera nuestra vista
hoguer tapia- Mensajes : 11
Fecha de inscripción : 12/02/2013
2) Investigar acerca del uso de vistas, procedimientos almacenados y disparadores (Trigger’s). Elaborar un resumen acerca de lo investigado, donde explique el uso y la importancia de dichos elementos, el cual, debe compartir en este foro. Finalmente, debe
VISTAS
No solamente una Vista es para ver la combinación de dos o más tablas en una sola, esa podría ser una primera aproximación, pero bastante simple por cierto, y no del todo acertada, ya que se puede crear una vista sobre una tabla simple.
El uso de vistas es algo cotidiano sobre todo en los entornos de producción empresarial, ya que permite por un lado que el Administrador de Bases de Datos pueda, de alguna manera, "proteger" los accesos directos a las tablas e implementar una medida de seguridad adicional, ya que una vista, al no ser una tabla en si misma, solamente estaría exponiendo el contenido, pero de un modo "protegido", y por otro lado, el Administrador de este modo, permite asimismo que los usuarios puedan "Ver", ya que de esto se trata, los datos en si mismos, pero de un modo mas "seguro".
Para el usuario final, ver los datos en modo de "vista" o de tabla, es exactamente igual, pero no para el DBA, quien debe velar por la integridad de los mismos. Puede, y de hecho sucede, que un usuario pueda consultar una tabla a través de una "vista", pero no de un modo directo con una instrucción "SELECT".
Triggers
Un Triggers o disparador es una rutina autónoma asociada con una tabla o vista que automáticamente realiza una acción cuando una fila en la tabla o la vista se inserta (INSERT), se actualiza (UPDATE), o borra (DELETE).
Un Trigger nunca se llama directamente. En cambio, cuando una aplicación o usuario intenta insertar, actualizar, o anular una fila en una tabla, la acción definida en el disparador se ejecuta automáticamente (se dispara).
ventajas Triggers son:
La entrada en vigor automática de restricciones de los datos, hace que los usuarios entren sólo valores válidos.
El mantenimiento de la aplicación se reduce, los cambios a un triggers se refleja automáticamente en todas las aplicaciones que tienen que ver con la tabla sin la necesidad de recompilar o relinquear.
Logs automáticos de cambios a las tablas. Una aplicación puede guardar un registro corriente de cambios, creando un trigger que se dispare siempre que una tabla se modifique.
La notificación automática de cambios a la Base de Datos con alertas de evento en los triggers.
Procedimientos Almacenados
[/b]Un Procedimiento Almacenado es un programa autocontrolado escrito en lenguaje del DBMS, son almacenados como parte de la Base de Datos y sus metadatos.
Una vez creado un procedimiento almacenado, se puede invocar directamente desde una aplicación, o sustituir el nombre de una tabla o vista, por el nombre de procedimiento en cláusulas SELECT. Los procedimientos almacenados pueden recibir parámetros de entrada y retornar valores a la aplicación.
Las ventajas de usar los procedimientos almacenados incluyen:
Diseño modular.
Aplicaciones que acceden la misma Base de Datos pueden compartir los procedimientos almacenados, eliminando el código doble y reduciendo el tamaño de las aplicaciones.
El fácil mantenimiento.
Cuando un procedimiento se actualiza, los cambios se reflejan automáticamente en todas las aplicaciones, sin la necesidad de recompilar y relinkear. Las aplicaciones son compiladas sólo una vez para cada cliente.
Los procedimientos almacenados son ejecutados por el servidor, no por el cliente lo que reduce el tráfico en la red y mejora el performance o desempeño, especialmente para el acceso del cliente remoto.
Están almacenados en los servidores y asegurados por las medidas tomadas en la instalación, lo que impide que los usuarios normales puedan modificarlos e incluso desconocen su existencia. Este es un elemento de gran valor en lo que a seguridad respecta.
Como se puede apreciar los Sistemas de Bases de Datos ofrecen a desarrolladores, administradores y usuarios una gama muy completa de herramientas que permiten garantizar la integridad, consistencia, confidencialidad y en general seguridad de la información almacenada y con un elemento muy importante a favor: Las líneas de código que se requieren por parte del implementador son muy pocas, en ocasiones solo basta con una sencilla sentencia para obligar al DBMS a controlar y mantener las restricciones necesarias.
No solamente una Vista es para ver la combinación de dos o más tablas en una sola, esa podría ser una primera aproximación, pero bastante simple por cierto, y no del todo acertada, ya que se puede crear una vista sobre una tabla simple.
El uso de vistas es algo cotidiano sobre todo en los entornos de producción empresarial, ya que permite por un lado que el Administrador de Bases de Datos pueda, de alguna manera, "proteger" los accesos directos a las tablas e implementar una medida de seguridad adicional, ya que una vista, al no ser una tabla en si misma, solamente estaría exponiendo el contenido, pero de un modo "protegido", y por otro lado, el Administrador de este modo, permite asimismo que los usuarios puedan "Ver", ya que de esto se trata, los datos en si mismos, pero de un modo mas "seguro".
Para el usuario final, ver los datos en modo de "vista" o de tabla, es exactamente igual, pero no para el DBA, quien debe velar por la integridad de los mismos. Puede, y de hecho sucede, que un usuario pueda consultar una tabla a través de una "vista", pero no de un modo directo con una instrucción "SELECT".
Triggers
Un Triggers o disparador es una rutina autónoma asociada con una tabla o vista que automáticamente realiza una acción cuando una fila en la tabla o la vista se inserta (INSERT), se actualiza (UPDATE), o borra (DELETE).
Un Trigger nunca se llama directamente. En cambio, cuando una aplicación o usuario intenta insertar, actualizar, o anular una fila en una tabla, la acción definida en el disparador se ejecuta automáticamente (se dispara).
ventajas Triggers son:
La entrada en vigor automática de restricciones de los datos, hace que los usuarios entren sólo valores válidos.
El mantenimiento de la aplicación se reduce, los cambios a un triggers se refleja automáticamente en todas las aplicaciones que tienen que ver con la tabla sin la necesidad de recompilar o relinquear.
Logs automáticos de cambios a las tablas. Una aplicación puede guardar un registro corriente de cambios, creando un trigger que se dispare siempre que una tabla se modifique.
La notificación automática de cambios a la Base de Datos con alertas de evento en los triggers.
Procedimientos Almacenados
[/b]Un Procedimiento Almacenado es un programa autocontrolado escrito en lenguaje del DBMS, son almacenados como parte de la Base de Datos y sus metadatos.
Una vez creado un procedimiento almacenado, se puede invocar directamente desde una aplicación, o sustituir el nombre de una tabla o vista, por el nombre de procedimiento en cláusulas SELECT. Los procedimientos almacenados pueden recibir parámetros de entrada y retornar valores a la aplicación.
Las ventajas de usar los procedimientos almacenados incluyen:
Diseño modular.
Aplicaciones que acceden la misma Base de Datos pueden compartir los procedimientos almacenados, eliminando el código doble y reduciendo el tamaño de las aplicaciones.
El fácil mantenimiento.
Cuando un procedimiento se actualiza, los cambios se reflejan automáticamente en todas las aplicaciones, sin la necesidad de recompilar y relinkear. Las aplicaciones son compiladas sólo una vez para cada cliente.
Los procedimientos almacenados son ejecutados por el servidor, no por el cliente lo que reduce el tráfico en la red y mejora el performance o desempeño, especialmente para el acceso del cliente remoto.
Están almacenados en los servidores y asegurados por las medidas tomadas en la instalación, lo que impide que los usuarios normales puedan modificarlos e incluso desconocen su existencia. Este es un elemento de gran valor en lo que a seguridad respecta.
Como se puede apreciar los Sistemas de Bases de Datos ofrecen a desarrolladores, administradores y usuarios una gama muy completa de herramientas que permiten garantizar la integridad, consistencia, confidencialidad y en general seguridad de la información almacenada y con un elemento muy importante a favor: Las líneas de código que se requieren por parte del implementador son muy pocas, en ocasiones solo basta con una sencilla sentencia para obligar al DBMS a controlar y mantener las restricciones necesarias.
hoguer tapia- Mensajes : 11
Fecha de inscripción : 12/02/2013
Reactivo #2
Respuesta al Reactivo #2.
Por: MENDOZA JAIMEZ CRISTINA
A continuación pongo mi resumen de lo que investigue y también con mis propias palabras acerca de vistas, procedimientos almacenados y disparadores (Trigger’s).
Cuando nosotros tenemos una Base de Datos (BD) alojada en un servidor de datos ya sea por más simple que esté o también compleja el uso de vistas nos resulta bastantemente importante, pues no es conveniente que todos los usuarios vean el modelo conceptual completo o la colección de relaciones que se tienen en nuestra Base de Datos, ya que las consideraciones de seguridad pueden requerir que se escondan ciertos datos del usuario esto para evitar cualquier tipo de robo de la integridad de nuestra BD. Otro aspecto importante a tomar a la hora de tener nuestra BD es que a las tablas se les puede implementar un disparador para evitar que el desarrollador de la aplicación tenga que incluir líneas adicionales de código fuente en el programa de cómputo. El uso de los disparadores (trigger) es muy importante para respaldar los datos eliminados de cualquier tabla, se puede implementar un trigger que "escuche" el evento "delete" que es para borrar, y antes (before) de eliminar el dato que ya no se requiera en la base de datos ejecutando obviamente un procedimiento almacenado o función que permita copiar primero, todo el contenido de de la tabla a una tabla llamada "respaldo" si lo deseamos así, para que pueda poner todo lo viejo que se tiene en la BD. Todo lo mencionado anteriormente brinda una plena confianza y bastante seguridad a los elementos que se encuentran en una base de datos alojadas en un servidor de datos, pues de no ser así se tendría que volver hacer nuevamente toda la estructura de la Base de Datos debido a que no contaríamos con este gran elemento que es el respaldo.
La información que acabo de describir la saqué de la lectura básica entregada por nuestro Profesor Edgar y en gran parte la describí a lo que yo le entendí.
Cuando nosotros tenemos una Base de Datos (BD) alojada en un servidor de datos ya sea por más simple que esté o también compleja el uso de vistas nos resulta bastantemente importante, pues no es conveniente que todos los usuarios vean el modelo conceptual completo o la colección de relaciones que se tienen en nuestra Base de Datos, ya que las consideraciones de seguridad pueden requerir que se escondan ciertos datos del usuario esto para evitar cualquier tipo de robo de la integridad de nuestra BD. Otro aspecto importante a tomar a la hora de tener nuestra BD es que a las tablas se les puede implementar un disparador para evitar que el desarrollador de la aplicación tenga que incluir líneas adicionales de código fuente en el programa de cómputo. El uso de los disparadores (trigger) es muy importante para respaldar los datos eliminados de cualquier tabla, se puede implementar un trigger que "escuche" el evento "delete" que es para borrar, y antes (before) de eliminar el dato que ya no se requiera en la base de datos ejecutando obviamente un procedimiento almacenado o función que permita copiar primero, todo el contenido de de la tabla a una tabla llamada "respaldo" si lo deseamos así, para que pueda poner todo lo viejo que se tiene en la BD. Todo lo mencionado anteriormente brinda una plena confianza y bastante seguridad a los elementos que se encuentran en una base de datos alojadas en un servidor de datos, pues de no ser así se tendría que volver hacer nuevamente toda la estructura de la Base de Datos debido a que no contaríamos con este gran elemento que es el respaldo.
La información que acabo de describir la saqué de la lectura básica entregada por nuestro Profesor Edgar y en gran parte la describí a lo que yo le entendí.
Por: MENDOZA JAIMEZ CRISTINA
cmendoza- Invitado
Respuesta al Reactivo #4
2).
A continuación les muestro primeramente la sintaxis para crear una vista, utilizando la consola de nuestra herramienta SQL
create view nombre_vista as (Consulta_SQL).
Y para poder implementar vistas en base de datos distintas se utiliza el siguiente código fuente )de acuerdo al libro PostgreSQL)
CREATE VIEW view_name AS
SELECT [DISTINCT [ON attrN] ]
expr1 [AS attr1], … exprN
[FROM from_list]
[EHERE qual]
[GROUP BY group_list];
Y no está de más señalar la sintaxis para eliminar una vista
DROP VIEW name
Mi información a portada la saque de la lectura básica como en un principio lo señalé y del libro digital de PostgreSQL que nuestro profesor Edgar nos pasó.
Por: MENDOZA JAIMEZ CRISTINA
Según la información de la lectura básica entregada por nuestro profesor Edgar Rangel, se le llama vista a "Cualquier relación que no es parte del modelo conceptual, pero se hace visible al usuario como una "relación virtual". Lo que significa que no cualquier relación que hay en la BD es parte de las relaciones reales que están almacenadas en la base de datos y nos es posible tener un gran número de vistas sobre cualquier conjunto de relaciones reales dado. Pues No es conveniente que todos los usuarios vean el modelo conceptual completo.", es por eso que se utiliza esto de la vista.
A continuación les muestro primeramente la sintaxis para crear una vista, utilizando la consola de nuestra herramienta SQL
create view nombre_vista as (Consulta_SQL).
Y para poder implementar vistas en base de datos distintas se utiliza el siguiente código fuente )de acuerdo al libro PostgreSQL)
CREATE VIEW view_name AS
SELECT [DISTINCT [ON attrN] ]
expr1 [AS attr1], … exprN
[FROM from_list]
[EHERE qual]
[GROUP BY group_list];
Y no está de más señalar la sintaxis para eliminar una vista
DROP VIEW name
Mi información a portada la saque de la lectura básica como en un principio lo señalé y del libro digital de PostgreSQL que nuestro profesor Edgar nos pasó.
Por: MENDOZA JAIMEZ CRISTINA
cmendoza- Invitado
RESPUESTA AL REACTIVO 4
4) Investigar como podría diseñar e implementar vistas en base de datos distintas. Comparta en este foro su código fuente en Lenguaje SQL.
Para crear una vista, debe contar con el permiso del propietario de la base de datos y, si la vista se crea con la cláusula SCHEMABINDING, debe contar también con los permisos correspondientes para las tablas o las vistas a las que se haga referencia en la definición de la vista.
Crea una tabla virtual cuyo contenido (columnas y filas) se define mediante una consulta. Use esta instrucción para crear una vista de los datos de una o varias tablas de la base de datos. Por ejemplo, una vista se puede usar para lo siguiente:
• Para centrar, simplificar y personalizar la percepción de la base de datos para cada usuario.
• Como mecanismo de seguridad, que permite a los usuarios obtener acceso a los datos por medio de la vista, pero no les conceden el permiso de obtener acceso directo a las tablas base subyacentes de la vista.
• Para proporcionar una interfaz compatible con versiones anteriores para emular una tabla cuyo esquema ha cambiado.
Su sintaxis:
CREATE VIEW [ schema_name . ] view_name [ (column [ ,...n ] ) ]
[ WITH <view_attribute> [ ,...n ] ]
AS select_statement
[ WITH CHECK OPTION ] [ ; ]
<view_attribute> ::=
{
[ ENCRYPTION ]
[ SCHEMABINDING ]
[ VIEW_METADATA ] }
Que significa cada elemento de la sintaxis:
schema_name
Es el nombre del esquema al que pertenece la vista.
view_name
Es el nombre de la vista. Los nombres de las vistas deben cumplir las reglas de los identificadores. La especificación del nombre del propietario de la vista es opcional.
column
Es el nombre que se va a usar para una columna en una vista. Solo se necesita un nombre de columna cuando una columna proviene de una expresión aritmética, una función o una constante; cuando dos o más columnas puedan tener el mismo nombre, normalmente debido a una combinación; o cuando una columna de una vista recibe un nombre distinto al de la columna de la que proviene. Los nombres de columna se pueden asignar también en la instrucción SELECT.
Si no se especifica el parámetro column, las columnas de la vista adquieren los mismos nombres que las columnas de la instrucción SELECT.
AS
Especifica las acciones que va a llevar a cabo la vista.
select_statement
Es la instrucción SELECT que define la vista. Dicha instrucción puede usar más de una tabla y otras vistas. Se necesitan permisos adecuados para seleccionar los objetos a los que se hace referencia en la cláusula SELECT de la vista que se ha creado.
Una vista no tiene por qué ser un simple subconjunto de filas y de columnas de una tabla determinada. Es posible crear una vista que use más de una tabla u otras vistas mediante una cláusula SELECT de cualquier complejidad.
En una definición de vista indizada, la instrucción SELECT debe ser una instrucción de una única tabla o una instrucción JOIN de varias tablas con agregación opcional.
ENCRYPTION
Cifra las entradas de sys.syscomments que contienen el texto de la instrucción CREATE VIEW. El uso de WITH ENCRYPTION evita que la vista se publique como parte de la replicación de SQL Server.
SCHEMABINDING
Enlaza la vista al esquema de las tablas subyacentes. Cuando se especifica SCHEMABINDING, las tablas base no se pueden modificar de una forma que afecte a la definición de la vista. En primer lugar, se debe modificar o quitar la propia definición de la vista para quitar las dependencias en la tabla que se va a modificar. Cuando se usa SCHEMABINDING, select_statement debe incluir los nombres de dos partes (schema.object) de las tablas, vistas o funciones definidas por el usuario a las que se hace referencia. Todos los objetos a los que se hace referencia se deben encontrar en la misma base de datos.
VIEW_METADATA
Especifica que la instancia de SQL Server devolverá a las API de DB-Library, ODBC y OLE DB la información de metadatos sobre la vista en vez de las tablas base cuando se soliciten los metadatos del modo de exploración para una consulta que hace referencia a la vista. Los metadatos del modo de exploración son metadatos adicionales que la instancia de SQL Server devuelve a estas API del lado cliente. Estos metadatos permiten a las API del lado cliente implementar cursores del lado cliente actualizables. Los metadatos del modo de exploración incluyen información sobre la tabla base a la que pertenecen las columnas del conjunto de resultados
NOTA: Una vista solo se puede crear en la base de datos actual. Una vista puede tener un máximo de 1.024 columnas.
REFERENCIA: http://msdn.microsoft.com/es-mx/library/ms187956(v=sql.105).aspx
ATENTAMENTE: MA. DE LOS ANGELES ALONSO TAPIA
Para crear una vista, debe contar con el permiso del propietario de la base de datos y, si la vista se crea con la cláusula SCHEMABINDING, debe contar también con los permisos correspondientes para las tablas o las vistas a las que se haga referencia en la definición de la vista.
Crea una tabla virtual cuyo contenido (columnas y filas) se define mediante una consulta. Use esta instrucción para crear una vista de los datos de una o varias tablas de la base de datos. Por ejemplo, una vista se puede usar para lo siguiente:
• Para centrar, simplificar y personalizar la percepción de la base de datos para cada usuario.
• Como mecanismo de seguridad, que permite a los usuarios obtener acceso a los datos por medio de la vista, pero no les conceden el permiso de obtener acceso directo a las tablas base subyacentes de la vista.
• Para proporcionar una interfaz compatible con versiones anteriores para emular una tabla cuyo esquema ha cambiado.
Su sintaxis:
CREATE VIEW [ schema_name . ] view_name [ (column [ ,...n ] ) ]
[ WITH <view_attribute> [ ,...n ] ]
AS select_statement
[ WITH CHECK OPTION ] [ ; ]
<view_attribute> ::=
{
[ ENCRYPTION ]
[ SCHEMABINDING ]
[ VIEW_METADATA ] }
Que significa cada elemento de la sintaxis:
schema_name
Es el nombre del esquema al que pertenece la vista.
view_name
Es el nombre de la vista. Los nombres de las vistas deben cumplir las reglas de los identificadores. La especificación del nombre del propietario de la vista es opcional.
column
Es el nombre que se va a usar para una columna en una vista. Solo se necesita un nombre de columna cuando una columna proviene de una expresión aritmética, una función o una constante; cuando dos o más columnas puedan tener el mismo nombre, normalmente debido a una combinación; o cuando una columna de una vista recibe un nombre distinto al de la columna de la que proviene. Los nombres de columna se pueden asignar también en la instrucción SELECT.
Si no se especifica el parámetro column, las columnas de la vista adquieren los mismos nombres que las columnas de la instrucción SELECT.
AS
Especifica las acciones que va a llevar a cabo la vista.
select_statement
Es la instrucción SELECT que define la vista. Dicha instrucción puede usar más de una tabla y otras vistas. Se necesitan permisos adecuados para seleccionar los objetos a los que se hace referencia en la cláusula SELECT de la vista que se ha creado.
Una vista no tiene por qué ser un simple subconjunto de filas y de columnas de una tabla determinada. Es posible crear una vista que use más de una tabla u otras vistas mediante una cláusula SELECT de cualquier complejidad.
En una definición de vista indizada, la instrucción SELECT debe ser una instrucción de una única tabla o una instrucción JOIN de varias tablas con agregación opcional.
ENCRYPTION
Cifra las entradas de sys.syscomments que contienen el texto de la instrucción CREATE VIEW. El uso de WITH ENCRYPTION evita que la vista se publique como parte de la replicación de SQL Server.
SCHEMABINDING
Enlaza la vista al esquema de las tablas subyacentes. Cuando se especifica SCHEMABINDING, las tablas base no se pueden modificar de una forma que afecte a la definición de la vista. En primer lugar, se debe modificar o quitar la propia definición de la vista para quitar las dependencias en la tabla que se va a modificar. Cuando se usa SCHEMABINDING, select_statement debe incluir los nombres de dos partes (schema.object) de las tablas, vistas o funciones definidas por el usuario a las que se hace referencia. Todos los objetos a los que se hace referencia se deben encontrar en la misma base de datos.
VIEW_METADATA
Especifica que la instancia de SQL Server devolverá a las API de DB-Library, ODBC y OLE DB la información de metadatos sobre la vista en vez de las tablas base cuando se soliciten los metadatos del modo de exploración para una consulta que hace referencia a la vista. Los metadatos del modo de exploración son metadatos adicionales que la instancia de SQL Server devuelve a estas API del lado cliente. Estos metadatos permiten a las API del lado cliente implementar cursores del lado cliente actualizables. Los metadatos del modo de exploración incluyen información sobre la tabla base a la que pertenecen las columnas del conjunto de resultados
NOTA: Una vista solo se puede crear en la base de datos actual. Una vista puede tener un máximo de 1.024 columnas.
REFERENCIA: http://msdn.microsoft.com/es-mx/library/ms187956(v=sql.105).aspx
ATENTAMENTE: MA. DE LOS ANGELES ALONSO TAPIA
AngelesAT- Mensajes : 36
Fecha de inscripción : 29/01/2013
1) Investigar algunos conceptos básicos de: "Estructura e Integridad de bases de datos", así como: "comandos básicos del LMD para poder realizar la Creación de bases de datos y la Definición del esquema de integridad. Debe indicar que tipo de fuentes (Lib
ALGUNOS CONCEPTOS QUE YO CON SIDERE IMPORTANTES SON:
Esquema de base de datos:
Se refiere a la estructura por la que esta formada la base de datos, se especifica por medio de un conjunto de definiciones que se expresa mediante un lenguaje especial llamado lenguaje de definición de datos. (DDL)
Administrador de base de datos (DBA):
Denota la persona o equipo de personas profesionales responsables del control y manejo del sistema de base de datos, generalmente tiene(n) experiencia en DBMS, diseño de bases de datos, Sistemas operativos, comunicación de datos, hardware y programación.
Sistema Manejador de Base de Datos. (DBMS)
Esto representa una colección de numerosas rutinas de software interrelacionadas, cada una de las cuales es responsable de una tarea específica.
ESQUEMA DE LA BD:
Esta se refiere a la estructura por la que esta formada la base de datos, se especifica por medio de un conjunto de definiciones que se expresa mediante un lenguaje especial llamado lenguaje de definición de datos. (DDL)
JENESIS REYES SAUCEDO
Esquema de base de datos:
Se refiere a la estructura por la que esta formada la base de datos, se especifica por medio de un conjunto de definiciones que se expresa mediante un lenguaje especial llamado lenguaje de definición de datos. (DDL)
Administrador de base de datos (DBA):
Denota la persona o equipo de personas profesionales responsables del control y manejo del sistema de base de datos, generalmente tiene(n) experiencia en DBMS, diseño de bases de datos, Sistemas operativos, comunicación de datos, hardware y programación.
Sistema Manejador de Base de Datos. (DBMS)
Esto representa una colección de numerosas rutinas de software interrelacionadas, cada una de las cuales es responsable de una tarea específica.
ESQUEMA DE LA BD:
Esta se refiere a la estructura por la que esta formada la base de datos, se especifica por medio de un conjunto de definiciones que se expresa mediante un lenguaje especial llamado lenguaje de definición de datos. (DDL)
JENESIS REYES SAUCEDO
JENESIS- Invitado
Re: 2.- Lenguaje De Manipulación De Datos (Estructura e Integridad De Bases De Datos
ALGUNOS CONCEPTOS QUE YO CONSIDERE IMPORTANTES SON:
Esquema de base de datos:
Se refiere a la estructura por la que esta formada la base de datos, se especifica por medio de un conjunto de definiciones que se expresa mediante un lenguaje especial llamado lenguaje de definición de datos. (DDL)
Administrador de base de datos (DBA):
Denota la persona o equipo de personas profesionales responsables del control y manejo del sistema de base de datos, generalmente tiene(n) experiencia en DBMS, diseño de bases de datos, Sistemas operativos, comunicación de datos, hardware y programación.
Sistema Manejador de Base de Datos. (DBMS)
Esto representa una colección de numerosas rutinas de software interrelacionadas, cada una de las cuales es responsable de una tarea específica.
ESQUEMA DE LA BD:
Esta se refiere a la estructura por la que esta formada la base de datos, se especifica por medio de un conjunto de definiciones que se expresa mediante un lenguaje especial llamado lenguaje de definición de datos. (DDL)
INFORMACION BASADA EN :
exa. unne.edu.ar/.../Conceptos_de_BD_y_de_Sistemas_de_BD.pdf
www. uaem.mx/posgrado/mcruz/cursos/miic/bd1.pdf
[b] www. slideshare.net/senaticscesar/bases-de-datos-conceptos-basicos
[/b]
y mi mapa conceptual de "comandos básicos del LMD para poder realizar la Creación de bases de datos y la Definición del esquema de integridad" lo pueden encontrar en :
https://2img.net/r/ihimg/photo/my-images/855/jjjjjjjjc.png/
JENESIS REYES SAUCEDO
Esquema de base de datos:
Se refiere a la estructura por la que esta formada la base de datos, se especifica por medio de un conjunto de definiciones que se expresa mediante un lenguaje especial llamado lenguaje de definición de datos. (DDL)
Administrador de base de datos (DBA):
Denota la persona o equipo de personas profesionales responsables del control y manejo del sistema de base de datos, generalmente tiene(n) experiencia en DBMS, diseño de bases de datos, Sistemas operativos, comunicación de datos, hardware y programación.
Sistema Manejador de Base de Datos. (DBMS)
Esto representa una colección de numerosas rutinas de software interrelacionadas, cada una de las cuales es responsable de una tarea específica.
ESQUEMA DE LA BD:
Esta se refiere a la estructura por la que esta formada la base de datos, se especifica por medio de un conjunto de definiciones que se expresa mediante un lenguaje especial llamado lenguaje de definición de datos. (DDL)
INFORMACION BASADA EN :
exa. unne.edu.ar/.../Conceptos_de_BD_y_de_Sistemas_de_BD.pdf
www. uaem.mx/posgrado/mcruz/cursos/miic/bd1.pdf
[b] www. slideshare.net/senaticscesar/bases-de-datos-conceptos-basicos
[/b]
y mi mapa conceptual de "comandos básicos del LMD para poder realizar la Creación de bases de datos y la Definición del esquema de integridad" lo pueden encontrar en :
https://2img.net/r/ihimg/photo/my-images/855/jjjjjjjjc.png/
JENESIS REYES SAUCEDO
Jenesis Reyes Saucedo- Mensajes : 16
Fecha de inscripción : 03/02/2013
Re: 2.- Lenguaje De Manipulación De Datos (Estructura e Integridad De Bases De Datos
kike leon escribió:1) Investigar algunos conceptos básicos de: "Estructura e Integridad de bases de datos", así como: "comandos básicos del LMD para poder realizar la Creación de bases de datos y la Definición del esquema de integridad. Debe indicar que tipo de fuentes (Libros, revistas, etc.) y TICs (Wikis, Foros, Edu-Blogs, WebQuest, EVE-A) se han involucrado para concretar la investigación. Y de acuerdo con lo investigado, debe elaborar un resumen o tabla comparativa o mapa conceptual o diagrama que permita representar (en texto o gráficamente) los conceptos clave, el cual debe compartir en este foro.
Una base de datos de red esta formado por una colección de registros, los cuales están conectados entre sí por medio de enlaces.
Registro.- Es una colección de campos (atributos)
Campos.- Contiene almacenado solamente un valor.
Enlace.- Asociación entre dos registros, así que podemos verla como una relación estrictamente binaria.
http://www.monografias.com/trabajos10/esda/esda.shtml#ixzz2LZ3vHO2t
Integridad de las Bases de Datos, la integridad en una base de datos es la corrección y exactitud de la información contenida. Además de conservar la seguridad en un sistema de bases de datos que permite el acceso a múltiples usuarios en tiempos paralelos.
http://www.ecured.cu/index.php/Integridad_de_las_Bases_de_Datos
En el tema se trata SQL como un lenguaje de consultas, por lo que se desarrollará el lenguaje de manipulación de datos o LMD. Los comandos utilizados en este lenguaje son:
SELECT Consulta los registros que satisfagan un determinado criterio.
INSERT Añade registros por lotes de datos (filas) en una tabla en una única operación.
UPDATE Modifica los campos indicados con el valor especificado en la sentencia.
DELETE Elimina los registros (filas) indicados en la sentencia.
Estos comandos dividen las consultas en dos tipos:
• Consultas de selección → SELECT.- muestran toda o parte de la información contenida en las tablas.
• Consultas de acción → INSERT, UPDATE Y DELETE.- modifican el contenido inicial de las tablas.
http://educativa.catedu.es/44700165/aula/archivos/repositorio//1000/1083/html/11_comandos_lmd.html
Integridad: Consiste en conservar la seguridad en un sistema que se permite a múltiples usuarios el acceso al sistema y compartir la base de datos. Tiene como función proteger la base de datos contra operaciones que introduzcan inconsistencias en los datos. Se habla de integridad en el sentido de corrección, validez o precisión de los datos. Un control de integridad o restricciones es aquel que nos permite definir con precisión el rango de valores validos para un elemento y/o las operaciones que serán consideraciones validas en la relación de tale elementos.
El objetivo primordial de un control de integridad es la reducción de la inconsistencia en la BD.
Las restricciones de integridad normalmente se aplican en tres niveles:
• Un Atributo Simple: Se define un dominio del atributo que es totalmente independiente del resto del entorno de la Base de Datos. Es un atributo que tiene un solo componente, que no se puede dividir en partes mas pequeñas que tengan un significado propio(valor único). Se identifica por la letra inicial en mayúscula.
• Un Atributo Dependiente de Otro: Se definen subconjuntos de dominios posibles para un atributo X según el valor que previamente a sido asignado al atributo W. También es conocido como atributos de grupo y se representa por medio de corchetes.
• Relaciones entre Tuplas de una o varias Tablas: Se especifican valores posibles para registros completos según los valores acumulados registros previos o por valores existentes en registros de otras tablas. También es conocido como objeto simétrico y se representa con un rectángulo sombreado y todo con mayúscula.
Reglas de Integridad:
Integridad de referencial. Se aplica a las claves ajenas: si en una relación hay alguna clave ajena, sus valores deben coincidir con valores de la clave primaria a la que hace referencia, o bien, deben ser completamente nulo. Se enmarca en términos de estados de la base de datos indica lo que es un estado ilegal pero no dice como puede evitarse. Existen 2 opciones rechazar la operación o bien aceptar la operación y realizar operaciones adicionales compensatorias que conduzcan a un estado legal.
Por lo tanto, para cada clave ajena de la base de datos habrá que contestar a tres preguntas:
Reglas de los nulos: ¿tiene sentido que la clave ajena acepte nulos?
Regla de borrado: ¿Qué ocurre si se intenta borrar la tupla referenciada por la clave ajena?
• Restringir: no se permite borrar la tupla referenciada.
• Propagar: se borra la tupla referenciada y se propaga el borrado a las tuplas la referencia mediante la clave ajena.
• Anular: se borra la tupla referenciada y las tuplas que la reverenciaba ponen a nulo la clave ajena (solo si acepta nulos).
Reglas de modificación: ¿Qué ocurre si se intenta modificar el valor de la clave primaria de la tupla referenciada por la clave ajena?
• Restringir: no se permite modificar el valor de la clave primaria de la tupla referenciada.
• Propagar: se modifica el valor de la clave primaria de la tupla referenciaba y se propaga la modificación a las tuplas que la referencia mediante clave ajena.
• Anular: se modifica la tupla referenciada y las tuplas que la referenciaban ponen a nulo la clave ajena (solo si acepta nulos).
Reglas de Integridad de Dominio. Un dominio de valores posibles puede estar asociado con cada atributo. Los límites de dominio son la forma mas elemental de restricciones de integridad. Son fáciles de probar por el sistema siempre que se introduce un nuevo dato en la base de datos.
Tipos de dominios: Es posible que varios atributos tengan el mismo dominio. Podemos ver que una definición adecuada de restricciones de dominio no solo nos permite probar consultas para asegurar que la comparación que se hace tiene sentido. El principio que hay detrás de los dominios de atributo es similar al que hay detrás de la asignación de tipos a variables en los lenguajes de programación. Los lenguajes de programación fuertemente tipiados permiten que el compilador el programa con mayor detalle.
Integridad de relaciones. Esta regla se aplica a las claves primarias de las relaciones base: ningún atributo que forme parte de una llave primaria puede aceptar valores nulos. Por definición, una clave primaria es irreducible que se utiliza para identificar de modo único las tuplas. Irreducible significa que ningún subconjunto de la clave primaria sirve para identificar las tuplas de modo único. Si se permite que parte de la clave primaria sea nula, se está diciendo que no todos sus atributos son necesarios para distinguir las tuplas, con lo que se contradice la irreducibilidad. Esta regla solo se aplica a las relaciones base y a las claves primarias, no a las claves alternativas.
Nulos: Ningún atributo que forme parte de una llave primaria puede aceptar valores nulos. Un valor nulo es un valor que esta fuera de la definición de cualquier dominio el cual permite dejar el valor del atributo "latente"; en otras palabras, un valor nulo no representa el valor cero, ni una cadena vacía, éstos son valores que tienen significado; implica ausencia de información por que se desconoce el valor del atributo o simplemente no tiene sentido.
Reglas de negocio: Los usuarios o los administradores de la base de datos pueden imponer ciertas restricciones específicas sobre los datos, a esto se le conoce como reglas de negocio.
http://yoalo.wikispaces.com/2.2+Definicion+Esquema+de+Integridad
atte: luis enrique leon salgado
Muy buenas noches , estaba leyendo las investigaciones y la tuya me pareció muy buena información creo que esta muy completa y tal y como se nos pidió si que hiciste una aportación importante.
Jenesis Reyes Saucedo- Mensajes : 16
Fecha de inscripción : 03/02/2013
3) Investigar acerca de la diferencia que existe entre la integridad de entidad e integridad referencial. Y comparta en este foro, comentarios contundentes al respecto.
Pues investigue cada una de ellas y yo las diferencio de la siguiente manera primeramente la integridad de entidad vendría siendo en una base de datos la clave primaria de una tabla la cual debería ser un atributo que identificara de forma única cada registro en cambio la integridad referencial asegura que el enlace entre la tablas este formado correctamente como por ejemplo si tenemos en una base de datos 2 tablas una tabla es de transacciones y otra es de partes y la de transacciones contiene un número de objeto que no está en la tabla de partes al unir las tablas provocará que las transacciones sin número de objeto queden fuera de los resultados es decir que sólo los números de objetos que están en la tabla de partes pueden aparecer en la tabla de transacciones.
Espero no a verlos enredado y que ayean entendido mi explicación acerca de lo que es la integridad de entidad e integridad referencia y su diferencia.
Espero no a verlos enredado y que ayean entendido mi explicación acerca de lo que es la integridad de entidad e integridad referencia y su diferencia.
Jenesis Reyes Saucedo- Mensajes : 16
Fecha de inscripción : 03/02/2013
REPLICA A LA RESPUESTA DE SINAI VARGAS
sinay vargas escribió:1) Investigar algunos conceptos básicos de: "Estructura e Integridad de bases de datos", así como: "comandos básicos del LMD para poder realizar la Creación de bases de datos y la Definición del esquema de integridad. Debe indicar que tipo de fuentes (Libros, revistas, etc.) y TICs (Wikis, Foros, Edu-Blogs, WebQuest, EVE-A) se han involucrado para concretar la investigación. Y de acuerdo con lo investigado, debe elaborar un resumen o tabla comparativa o mapa conceptual o diagrama que permita representar (en texto o gráficamente) los conceptos clave, el cual debe compartir en este foro.
Sobre las información que obtuve respecto a lo que pide este inciso es lo siguiente:
ESTRUCTURA DE BASE DE DATOS
La estructura de una base de datos hace referencia a los tipos de datos, los vínculos o relaciones y las restricciones que deben cumplir esos datos (integridad de datos y redundancia de datos).Dentro de la estructura de una base de datos encontramos:
Integridad de datos
Redundancia de datos
La estructura de una base de datos es diseñada o descripta empleando algún tipo de modelo de datos.
Las diferentes estructuras de base de datos
Modelo relacional de base de datos
Representa al mundo real mediante tablas relacionadas entre sí por columnas.
Modelo de red
Se representa al mundo real como registros lógicos que representan a una entidad y que se relacionan entre sí por medio de flechas.
Modelo jerárquico
Tiene forma de árbol invertido. Un padre puede tener varios hijos pero cada hijo sólo puede tener un padre.
Un ejemplo a modo de descripción de la estructura de una base de datos puede ser:
ALUMNO: numero de alumnno (entero de 6 números), nombre (cadena de 30 caracteres), apellido (cadena de 30 caracteres), año de nacimiento (entero de 4 números), especialidad (entero de 3 números).
ESPECIALIDAD: numero de especialidad (entero de 3 números), nombre de especialidad (cadena de 30 caracteres).
Estructura de datos relacional
Es aquella cuyos usuarios la perciben como un conjunto de tablas.
Una relación puede representarse mediante una tabla (de hecho es usual y aceptable utilizar el término tabla para referirse a una relación) podríamos decir que:
Una tupla corresponde a una fila de la tabla.
Un atributo corresponde a una columna de la tabla (equivale a un campo de un registro).
Un dominio es una colección de valores, de los cuales uno o más atributos obtienen sus valores reales.
Clave primaria Es posible que una relación posea más de una clave candidata, en ese caso, se escoge una de ellas como clave primaria y el resto se denominan claves alternativas.
Clave ajena o extranjera es un atributo (o conjunto de atributos) de una relación R1 que es clave primaria de otra relación R2.
INTEGRIDAD DE BASE DE DATOS
La integridad Proporciona un medio de asegurar que los cambios que se hacen en la base de datos por usuarios autorizados no resultan en una pérdida de consistencia de los datos.
La integridad de los datos garantiza la calidad de los datos de la base de datos.
En una base de datos relacional, las relaciones están sujetas a ciertas reglas de integridad:
Integridad de entidad: “Ningún atributo que participe en una clave principal puede tener valores nulos.
Integridad referencial: “No deben existir valores de clave ajena sin concordancia.”
La integridad de datos pertenece a una de las siguientes categorías:
La integridad de entidad define una fila como entidad única para una tabla determinada.
La integridad de dominio viene dada por la validez de las entradas para una columna determinada. Puede exigir la integridad de dominio para restringir el tipo mediante tipos de datos, el formato mediante reglas y restricciones CHECK, o el intervalo de valores posibles mediante restricciones FOREIGN KEY, restricciones CHECK, definiciones DEFAULT, definiciones NOT NULL y reglas.
La integridad referencial protege las relaciones definidas entre las tablas cuando se crean o se eliminan filas.
La integridad definida por el usuario permite definir reglas de empresa específicas que no pertenecen a ninguna otra categoría de integridad.
Todas las categorías de integridad admiten la integridad definida por el usuario. Esto incluye todas las restricciones de nivel de columna y nivel de tabla en CREATE TABLE, procedimientos almacenados y desencadenadores.
COMANDOS BASICOS DEL LMD
Los comandos son instrucciones que realizan acciones sobre las tablas de la base de datos.
Un lenguaje de manipulación de datos (en inglés: DML, data manipulation language) permite a los usuarios manejar o tener acceso a los datos que están organizados por medio del modelo apropiado.
Existen básicamente dos tipos de DML o LMD:
De procedimientos: Necesitan que el usuario especifique cuáles datos quiere y cómo deben obtenerse.
Sin procedimientos: Requieren que el usuario especifique cuáles datos quiere sin especificar cómo obtenerlos.
Los comandos básicos de LMD (Lenguaje de Manipulación de Datos) son:
INSERT
Una sentencia INSERT es para agrega uno o más registros a una (y sólo una) tabla en una única operación de una base de datos relacional.
Sintaxis
INSERT INTO tabla (columna1,[columna2,…]) VALUES (valor1, [valor2,…])
SELECT
Es para realizar consulta los registros que satisfagan un determinado criterio.
Sintaxis
Select * from [nombre de la tabla]
UPDATE
Es para modificar los campos indicados con el valor especificado en la sentencia.
Sintaxis
nombre-tabla SET {nombre-columna = expresión,} [WHERE condición];
DELETE
Se utiliza para Elimina los registros (filas) indicados en la sentencia.
Sintaxis
DELETE FROM estudiante WHERE cod_est = 98115310;
DEFINICION DE ESQUEMA DE INTEGRIDAD
Integridad: Consiste en conservar la seguridad en un sistema que se permite a múltiples usuarios el acceso al sistema y compartir la base de datos. Tiene como función proteger la base de datos contra operaciones que introduzcan inconsistencias en los datos.
Un control de integridad o restricciones es aquel que nos permite definir con precisión el rango de valores validos para un elemento y/o las operaciones que serán consideraciones validas en la relación de tale elementos.
El objetivo primordial de un control de integridad es la reducción de la inconsistencia en la BD.
Las restricciones de integridad normalmente se aplican en tres niveles:
• Un Atributo Simple: Se define un dominio del atributo que es totalmente independiente del resto del entorno de la Base de Datos.
• Un Atributo Dependiente de Otro: Se definen subconjuntos de dominios posibles para un atributo X según el valor que previamente a sido asignado al atributo W.
• Relaciones entre Tuplas de una o varias Tablas: Se especifican valores posibles para registros completos según los valores acumulados registros previos o por valores existentes en registros de otras tablas.
Fuentes consultada
http://www.slideshare.net/luiscfh/estructuras-de-base-de-datos
http://www.slideshare.net/142918/estructura-de-las-bases-de-datos-5670614
http://www.ies-bezmiliana.org/departamentos/informat/Ciclo%20grado%20superior/bases%20de%20datos/Tema-3-BD.PDF
http://labredes.itcolima.edu.mx/fundamentosbd/sd_u3_3.htm
http://msdn.microsoft.com/es-mx/library/ms184276(v=sql.105).aspx
http://e-ducativa.catedu.es/44700165/aula/archivos/repositorio//1000/1083/html/11_comandos_lmd.html
http://html.rincondelvago.com/bases-de-datos_9.html
http://html.rincondelvago.com/lenguajes-de-manipulacion-y-definicion-de-datos.html
http://chiokapy.blogspot.mx/2011/08/comandos-de-lmd.html
http://yoalo.wikispaces.com/2.2+Definicion+Esquema+de+Integridad
http://tutorialdeadministraciondebasededatos.blogspot.mx/2009/08/22-esquema-de-integridad.html
Esta es la información que obtuve de estas fuentes de investigación.Atentamente: SINAI VARGAS GARCIAIA
QUE TAL SINAI:
ME PARECE MUY BUENA LA INFORMACIÓN QUE HAS PROPORCIONADO EN ESTE FORO, ESTÁ MUY COMPLETA TU RESPUESTA, Y ME SIRVIÓ DE MUCHO LA INFORMACIÓN Y LAS FUENTES BIBLIOGRÁFICAS QUE HAS CITADO.
BUEN APORTE COMPAÑERA
PABLO DELGADO
pablodelgadogomez- Mensajes : 28
Fecha de inscripción : 29/01/2013
REPLICA A LA RESPUESTA DE MA. DE LOS ANGELES
AngelesAT escribió:3) Investigar acerca de la diferencia que existe entre la integridad de entidad e integridad referencial. Y comparta en este foro, comentarios contundentes al respecto.
La integridad de entidad y la integridad referencial son dos formas de integridad de datos que son particularmente importantes en las bases de datos relacionales
DIFERENCIA:
INTEGRIDAD DE IDENTIDAD
Pretende que cada entidad que se guarda en la base de datos sea identificable de un modo único, es decir, que evitemos la información redundante. La identificación de entidades no es única, podemos tener varios modos de entidad para un mismo objeto real.
INTEGRIDAD REFERENCIAL
La integridad referencial protege las relaciones definidas entre las tablas cuando se crean o se eliminan filas. En SQL Server la integridad referencial se basa en las relaciones entre claves externas y claves principales o entre claves externas y claves exclusivas, mediante restricciones FOREIGN KEY y CHECK.
La integridad referencial garantiza que los valores de clave sean coherentes en las distintas tablas. Para conseguir esa coherencia, es preciso que no haya referencias a valores inexistentes y que, si cambia el valor de una clave, todas las referencias a ella se cambien en consecuencia en toda la base de datos.
fuente consultada: http://www.ehowenespanol.com/son-importantes-integridad-entidad-integridad-referencial-base-datos-info_224489/
ATENTAMENTE MA. DE LOS ANGELES ALONSO TAPIA
QUE TAL, ANGELES:
ESTOY DE ACUERDO CON TU RESPUESTA, YA QUE YO TAMBIÉN INVESTIGUÉ Y AUNQUE CAMBIA UN POCO EL CONCEPTO, DA A ENTENDER LA MISMA IDEA DE LAS DIFERENCIAS ENTRE ESTOS DOS TIPOS DE INTEGRIDAD.
BUEN APORTE
ATTE. PABLO DELGADO
pablodelgadogomez- Mensajes : 28
Fecha de inscripción : 29/01/2013
Replica a una compañera
CINTHIA CADENA PEREZ escribió:RESPUESTA AL REACIVO N°1
1) Investigar algunos conceptos básicos de: "Estructura e Integridad de bases de datos", así como: "comandos básicos del LMD para poder realizar la Creación de bases de datos y la Definición del esquema de integridad. Debe indicar que tipo de fuentes (Libros, revistas, etc.) y TICs (Wikis, Foros, Edu-Blogs, WebQuest, EVE-A) se han involucrado para concretar la investigación. Y de acuerdo con lo investigado, debe elaborar un resumen o tabla comparativa o mapa conceptual o diagrama que permita representar (en texto o gráficamente) los conceptos clave, el cual debe compartir en este foro.
ESTRUTURA DE UNA BASE DE DATOS:
La estructura de una base de datos hace referencia a los tipos de datos, los vínculos o relaciones y las restricciones que deben cumplir esos datos (integridad de datos y redundancia de datos). La estructura de una base de datos es diseñada o descripta empleando algún tipo de modelo de datos.
La estructura de la base de datos es bastante sencilla. Las convenciones utilizadas aparecen implícitamente en este documento. Por ejemplo, la mayoría de los objetos se indexan con un entero autoincrementado cuyo nombre es de tipo id_objet, y que se declara como clave primaria en la tabla apropiada. La estructura de una base de datos hace referencia a los tipos de datos, los vínculos o relaciones y las restricciones que deben cumplir esos datos: Integridad de datos, redundancia de datos.
Diferentes estructuras de una base de datos:
Modelo Relacional de Datos
Modelo de Red
Modelo Jerárquico
INTEGRIDAD DE LA BASE DE DATOS
Según [Korth y Silberschatz ]: La integridad Proporciona un medio de asegurar que los cambios que se hacen en la base de datos por usuarios autorizados no resultan en una pérdida de consistencia de los datos.
Según [ David M. Kroenke]: Un conjunto de datos tiene integridad si son consistentes, si se ensamblan entre sí. Con frecuencia, en los sistemas de procesamiento de archivos se aprecia una pobre integridad de los
La exigencia de integridad de los datos garantiza la calidad de los datos de la base de datos. Por ejemplo, si se especifica para un empleado el valor de identificador de 123, la base de datos no debe permitir que ningún otro empleado tenga el mismo valor de identificador. Si tiene una columna employee_rating para la que se prevean valores entre 1 y 5, la base de datos no debe aceptar valores fuera de ese intervalo. Si en la tabla hay una columna dept_id en la que se almacena el número de departamento del empleado, la base de datos sólo debe permitir valores que correspondan a los números de departamento de la empresa.Dos pasos importantes en el diseño de las tablas son la identificación de valores válidos para una columna y la determinación de cómo forzar la integridad de los datos en la columna. La integridad de datos pertenece a una de las siguientes categorías:
Integridad de entidad
Integridad de dominio
Integridad referencial
Integridad definida por el usuario
Integridad de entidad: La integridad de entidad define una fila como entidad única para una tabla determinada. La integridad de entidad exige la integridad de las columnas de los identificadores o la clave principal de una tabla, mediante índices y restricciones UNIQUE, o restricciones PRIMARY KEY.
Integridad de dominio: La integridad de dominio viene dada por la validez de las entradas para una columna determinada. Puede exigir la integridad de dominio para restringir el tipo mediante tipos de datos, el formato mediante reglas y restricciones CHECK, o el intervalo de valores posibles mediante restricciones FOREIGN KEY, restricciones CHECK, definiciones DEFAULT, definiciones NOT NULL y reglas
Integridad referencial: La integridad referencial protege las relaciones definidas entre las tablas cuando se crean o se eliminan filas. En SQL Server 2005 la integridad referencial se basa en las relaciones entre claves externas y claves principales o entre claves externas y claves exclusivas, mediante restricciones FOREIGN KEY y CHECK. La integridad referencial garantiza que los valores de clave sean coherentes en las distintas tablas.
COMANDOS BASICOS DE LMD
Esta clasificación es conocida como Data Manipulation Language, en esta agrupación recaen sentencias que requieren de confirmación para hacer definitivos los cambios hechos a través de este tipo de sentencias, es decir, no tienen commit implícito. Las sentencias de este tipo son:
1. SELECT: Si bien en mucha bibliografía se deja esta sentencia fuera de este tipo de clasificación es considerada como una sentencia DML y nos permite visualizar la información contenida en una tabla, es decir, obtener filas a través de la consulta de las columnas de alguna tabla. Esta sentencia nos provee en pocas palabras la facilidad para utilizar el projection (selección de columnas), el selection (selección de filas) el Joining Ejemplo:
SQL> select empno,ename from emp;
EMPNO ENAME
---------- ----------
7369 SMITH
7499 ALLEN
7521 WARD
7566 JONES
7654 MARTIN
7698 BLAKE
7782 CLARK
7788 SCOTT
7839 KING
7844 TURNER
7876 ADAMS
EMPNO ENAME
---------- ----------
7900 JAMES
7902 FORD
7934 MILLER
14 rows selected.
2. INSERT: Esta sentencia permite insertar nuevas filas en una tabla. Solamente puede insertar una fila por vez, ya que para realizar una inserción masiva de varias filas debe ocuparse una combinación del comando INSERT y SELECT como por ejemplo: insert into dept_80 (select * from employees where department_id = 80) entre otras alternativas. Esta sentencia utiliza la KEYWORD VALUES para indicar los nuevos valores a ser insertados en la tabla.
Ejemplo de un insert normal:
SQL> insert into alumnos (rut,nombre) values ('13243451-4','testing');
1 row created.
3. UPDATE: permite actualizar el valor de las columnas de una tabla que pertenezcan a una fila en particular, si no a todas en caso de que no se utilice filtro alguno en la clausula WHERE. Ejemplo:
SQL> update alumnos set rut='46321654-7' where nombre='testing';
1 row updated.
4. DELETE: Esta sentencia permite eliminar filas de una tabla en particular que cumplan con la condición indicada en la cláusula WHERE. En caso de que no se indique un filtro asociado la sentencia borrará todo el contenido de la tabla, de forma similar al TRUNCATE (a excepción de que DELETE si permite deshacer la sentencia con ROLLBACK, trúncate no permite esto).Ejemplo:
SQL> delete from emp_aux where EMPNO=7900;
1 row deleted.
5. MERGE: Esta sentencia permite hacer dos cosas a la vez, actualizar e insertar registros en una tabla. Su sentencia emplead es: Merge into lest1 a;
Fuentes consultadas
• http://es.wikipedia.org/wiki/SQL
• http://felipedonoso.blogspot.mx/2011/05/www.html
• www.slideshare.net/luiscfh/estructuras-de-base-de-datos
• http://www.slideshare.net/sistemasddm/integridad-sql-serverATTE:CINTHIA CADENA PEREZ
Hola amiga sobre tu información proporcionada al foro me parecio muy bien explicada sobre todo en los comandos del lenguaje de manipulación de datos ya que nosotros ya teniamos una idea de como funcionaban por que en semestres anteriores los veníamos utilizando.
y me gusto tu información.
Atentamente: sinaí vargas garcía
sinay vargas- Mensajes : 68
Fecha de inscripción : 29/01/2013
Replica a una compañera
CINTHIA escribió:Respuesta al reactivo nº 3
3) Investigar acerca de la diferencia que existe entre la integridad de entidad e integridad referencial. Y comparta en este foro, comentarios contundentes al respecto.DIFERENCIAS DE INTEGRIDAD DE ENTIDAD VS INTEGRIDAD REFERENCIAL.
INTEGRIDAD DE ENTIDAD:
*Pretende que cada entidad que se guarda en la base de datos sea identificable de un modo único, es decir, que evitemos la información redundante.
*La identificación de entidades no es única, podemos tener varios modos de entidad para un mismo objeto real.
*La integridad de entidad define una fila como entidad única para una tabla determinada.
*Exige la integridad de las columnas, de los identificadores o la clave principal de una tabla, mediante índices y restricciones UNIQUE, o restricciones PRIMARY KEY o IDENTITY.
*Una tabla puede tener solo una restricción PRIMARY KEY, y ninguna columna que participa de la clave primaria puede aceptar nulos. Cuando se especifica una restricción PRIMARY KEY para una tabla, SQL asegura la unicidad de los datos creando un índice principal para las columnas de la clave primaria.
*Cada tabla puede tener sólo una columna de identificación, la que contendrá una secuencia de valores generados por el sistema que unívocamente identifican a cada fila de la tabla.
INTEGRIDAD REFERENCIAL
*Protege las relaciones definidas entre las tablas cuando se crean o se eliminan filas.
*Se basa en las relaciones entre claves externas y claves principales, mediante restricciones FOREIGN KEY y CHECK.
*Garantiza que los valores de clave sean coherentes en las distintas tablas.
*Para conseguir esa coherencia, es preciso que no haya referencias a valores inexistentes y que, si cambia el valor de una clave, todas las referencias a ella se cambien en consecuencia en toda la base de datos.
*Cuando se exige la integridad referencial, SQL Server impide a los usuarios:
•Agregar o cambiar filas en una tabla relacionada si no hay ninguna fila asociada en la tabla principal.
•Cambiar valores en una tabla principal que crea filas huérfanas en una tabla relacionada.
•Eliminar filas de una tabla principal cuando hay filas relacionadas coincidentes.
En mi persona esta son las diferencias que encontré sobre estas dos integridades, respecto de esto considero que la primero su propósito más que nada es que cada dato que se almacene en la base de datos sea identificable por eso esta integridad recibe el nombre de “integridad de identidad” más sin en cambio la integridad referencial trata de mantener cierta relacion de los contenidos en una base de datos aun cuando se realicen cambios en ellos.
Espero les sirva mi información compañeros, esto es todo.
ATTE: CINTHIA CADENA PEREZ
Hola amiga sobre las diferencia de cada una de estas integridades a mi punto de vista me parecen bien, ya que nos podemos percatar que cada una de estas tienen diferentes funcionalidades.
Atentamente: sinaí vargas garc
ía
sinay vargas- Mensajes : 68
Fecha de inscripción : 29/01/2013
Replica a una compañera
AngelesAT escribió:ESTRUCTURA E INTEGRIDAD DE DATOSEl término integridad de datos se refiere a la corrección y complementación de los datos en una base de datos ademas la integridad de los datos almacenados puede perderse de muchas maneras diferentes. Pueden añadirse datos no válidos a la base de datos, tales como un pedido que especifica un producto no existente.
Pueden modificarse datos existentes tomando un valor incorrecto, como por ejemplo si se reasigna un vendedor a una oficina no existente. Los cambios en la base de datos pueden perderse debido a un error del sistema o a un fallo en el suministro de energía. Los cambios pueden ser aplicados parcialmente, como por ejemplo si se añade un pedido de un producto sin ajustar la cantidad disponible para vender.
FUNCIÓN PRINCIPAL:
La función básica de una base de datos es permitir el almacenamiento y la recuperación de la información necesaria, para que las personas de la organización puedan tomar decisiones. Es así que las Bases de Datos se tornan esenciales para la supervivencia de cualquier organización; pues los datos estructurados constituyen un recurso básico para todas las organizaciones.
Ahora se definira lo que es un comando, pues bien un comando es una sentencia o instruccion que se utiliza para realizar acciones sobre las tablas de la base de datos.
y en los comandos encontramos el de LENGUAJE DE MANIPULACION DE DATOS (LMD). Comandos que utilizamos:
SELECT :Consulta los registros que satisfagan un determinado criterio.
INSERT: Añade registros por lotes de datos (filas) en una tabla en una única operación.
UPDATE: Modifica los campos indicados con el valor especificado en la sentencia.
DELETE: Elimina los registros (filas) indicados en la sentencia.
ESQUEMAS DE INTEGRIDAD
Un control de integridad o restricciones es aquel que nos permite definir con precisión el rango de valores validos para un elemento y/o las operaciones que serán consideraciones validas en la relación de tale elementos.
FUENTES:
http://e-ducativa.catedu.es/44700165/aula/archivos/repositorio//1000/1083/html/11_comandos_lmd.html
http://www.cyta.com.ar/biblioteca/bddoc/bdlibros/proyectoinformatico/libro/c3/c3.htm
http://tutorialdeadministraciondebasededatos.blogspot.mx/2009/08/22-esquema-de-integridad.html
ATENTAMENTE
MA. DE LOS ANGELES ALONSO TAPIA
Hola amiga con respecto a la información que has proporcionado me parece muy buena por que nos damos una idea de como se implementan todos estos componentes.
Me gusto tu información
[left]
Atentamente: Sinaí vargas garcia
sinay vargas- Mensajes : 68
Fecha de inscripción : 29/01/2013
Replica a una compañera
CINTHIA CADENA PEREZ escribió:RESPUESTA AL REACTIVO N°4
4) Investigar como podría diseñar e implementar vistas en base de datos distintas. Comparta en este foro su código fuente en Lenguaje SQL.
PARA LA CREACION DE UNA NUEVA VISTA
CREATE [OR REPLACE] [ALGORITHM = {UNDEFINED | MERGE | TEMPTABLE}]
VIEW nombre_vista [(columnas)]
AS sentencia_select
[WITH [CASCADED | LOCAL] CHECK OPTION]
Esta sentencia crea una vista nueva o reemplaza una existente si se incluye la cláusula OR REPLACE. La sentencia_select es una sentencia SELECT que proporciona la definición de la vista. Puede estar dirigida a tablas de la base o a otras vistas.
Se requiere que posea el permiso CREATE VIEW para la vista, y algún privilegio en cada columna seleccionada por la sentencia SELECT. Para columnas incluidas en otra parte de la sentencia SELECT debe poseer el privilegio SELECT. Si está presente la cláusula OR REPLACE, también deberá tenerse el privilegio DELETE para la vista.
Toda vista pertenece a una base de datos. Por defecto, las vistas se crean en la base de datos actual. Pera crear una vista en una base de datos específica, indíquela con base_de_datos.nombre_vista al momento de crearla.
mysql> CREATE VIEW test.v AS SELECT * FROM t;
Las tablas y las vistas comparten el mismo espacio de nombres en la base de datos, por eso, una base de datos no puede contener una tabla y una vista con el mismo nombre.
Al igual que las tablas, las vistas no pueden tener nombres de columnas duplicados. Por defecto, los nombres de las columnas devueltos por la sentencia SELECT se usan para las columnas de la vista . Para dar explícitamente un nombre a las columnas de la vista utilice la clásula columnas para indicar una lista de nombres separados con comas. La cantidad de nombres indicados en columnas debe ser igual a la cantidad de columnas devueltas por la sentencia SELECT.
Las columnas devueltas por la sentencia SELECT pueden ser simples referencias a columnas de la tabla, pero tambien pueden ser expresiones conteniendo funciones, constantes, operadores, etc.
Los nombres de tablas o vistas sin calificar en la sentencia SELECT se interpretan como pertenecientes a la base de datos actual. Una vista puede hacer referencia a tablas o vistas en otras bases de datos precediendo el nombre de la tabla o vista con el nombre de la base de datos apropiada.
Las vistas pueden crearse a partir de varios tipos de sentencias SELECT. Pueden hacer referencia a tablas o a otras vistas. Pueden usar combinaciones, UNION, y subconsultas.
La definición de una vista está sujeta a las siguientes limitaciones:
• La sentencia SELECT no puede contener una subconsulta en su cláusula FROM.
• La sentencia SELECT no puede hacer referencia a variables del sistema o del usuario.
• La sentencia SELECT no puede hacer referencia a parámetros de sentencia preparados.
• Dentro de una rutina almacenada, la definición no puede hacer referencia a parámetros de la rutina o a variables locales.
• Cualquier tabla o vista referenciada por la definición debe existir. Sin embargo, es posible que después de crear una vista, se elimine alguna tabla o vista a la que se hace referencia. Para comprobar la definición de una vista en busca de problemas de este tipo, utilice la sentencia CHECK TABLE.
• La definición no puede hacer referencia a una tabla TEMPORARY, y tampoco se puede crear una vista TEMPORARY.
• Las tablas mencionadas en la definición de la vista deben existir siempre.
• No se puede asociar un disparador con una vista.
En la definición de una vista está permitido ORDER BY, pero es ignorado si se seleccionan columnas de una vista que tiene su propio ORDER BY.
Con respecto a otras opciones o cláusulas incluidas en la definición, las mismas se agregan a las opciones o cláusulas de cualquier sentencia que haga referencia a la vista creada, pero el efecto es indefinido. Por ejemplo, si la definición de una vista incluye una cláusula LIMIT, y se hace una selección desde la vista utilizando una sentencia que tiene su propia cláusula LIMIT, no está definido cuál se aplicará. El mismo principio se extiende a otras opciones como ALL, DISTINCT, o SQL_SMALL_RESULT que se ubican a continuación de la palabra reservada SELECT, y a cláusulas como INTO, FOR UPDATE, LOCK IN SHARE MODE, y PROCEDURE.
Entidad vistas
• ID de vista: Identificador de cada vista y llave principal de la entidad.
• Código de vista: Valor único, creado para reconocer cada vista.
• Nombre de vista: Con este nombre se identifica el modelo físico y el número de vista que corresponde al modelo que se obtuvo mediante el escáner de rango.
• Número de puntos: Para cada vista se especifica un único número total de puntos, el cual brinda una idea global de la nube de puntos de la vista.
• Número de triángulos: Número único de triángulos que conforman la vista.
• Fecha de vistas: Fecha en la cual se realizaron las vistas del modelo.
• Textura: Atributo para reconocer si la vista tiene textura o no.
• Ruta de vista: Directorio en el cual se encuentra la vista; al realizar la implementación WEB de la base de datos con PHP, se utilizará este campo para la visualización y las descargas.
• Descripción de la vista: Explica si la textura fue tomada con el escáner de rango, con la cámara Sony o con ambas; esto con el fin de conocer la dimensión de la textura.
• Ángulo de la vista: Valor del ángulo de la tornamesa con respecto al escáner; éste valor es importante para un mejor registro de las vistas.
Bueno compañeros esto lo que abarca mi investigación espero que les sirva.
ATTE: CINTHIA CADENA PEREZ
Hola amiga sobre tu información sobre el diseño e implementación de las vistas me parecio muy completa ya que como los demas compañeros nos proporciona su codigo para podemos dar una idea de como implementarlo. y por otro lado nos das entidades de una vista entre otros aspectos. Me gusto tu información.
Atentamente: Sinai Vargar Garcia
sinay vargas- Mensajes : 68
Fecha de inscripción : 29/01/2013
Replica a una compañera
karina acuña santana escribió:4) Investigar como podría diseñar e implementar vistas en base de datos distintas. Comparta en este foro su código fuente en Lenguaje SQL.
VISTAS: una vista es una consulta accesible como una tabla virtual en una base de datos relacional o en un conjunto de documentos en una base de datos orientada a documentos.
Las vistas tienen la misma estructura que una tabla: filas y columnas. La única diferencia es que sólo se almacena de ellas la definición, no los datos. Los datos que se recuperan mediante una consulta a una vista se presentarán igual que los de una tabla. De hecho, si no se sabe que se está trabajando con una vista, nada hace suponer que es así. Al igual que sucede con una tabla, se pueden insertar, actualizar, borrar y seleccionar datos en una vista. Aunque siempre es posible seleccionar datos de una vista, en algunas condiciones existen restricciones para realizar el resto de las operaciones sobre vistas.
Una vista se especifica a través de una expresión de consulta (una sentencia SELECT) que la calcula y que puede realizarse sobre una o más tablas. Sobre un conjunto de tablas relacionales se puede trabajar con un número cualquiera de vistas.
Antes de crear una vista, considere las siguientes indicaciones:
• Sólo puede crear vistas en la base de datos actual. Sin embargo, las tablas y las vistas a las que se haga referencia desde la nueva vista pueden encontrarse en otras bases de datos e, incluso, en otros servidores, si la vista se define mediante consultas distribuidas.
• Los nombres de las vistas deben seguir las reglas que se aplican a los identificadores y ser únicos para cada esquema. Además, el nombre debe ser distinto del de las tablas incluidas en ese esquema.
• Es posible generar vistas dentro de otras vistas. MicrosoftSQL Server permite anidar vistas.El anidamiento no debe superar los 32 niveles. Es posible que el límite real del anidamiento de vistas sea inferior en función de la complejidad de la vista y de la memoria disponible.
• No puede asociar con las vistas reglas ni definiciones DEFAULT.
• Los desencadenadores AFTER no se pueden asociar con las vistas; sólo se pueden asociar los desencadenadores INSTEAD OF.
• La consulta que define la vista no puede incluir las cláusulas COMPUTE ni COMPUTE BY, y tampoco puede incluir la palabra clave INTO.
• La consulta que define la vista no puede incluir la cláusula ORDER BY, a menos que también haya una cláusula TOP en la lista de selección de la instrucción SELECT.
• La consulta que define la vista no puede incluir la cláusula OPTION que especifica una sugerencia de consulta.
• La consulta que define la vista no puede incluir la cláusula TABLESAMPLE.
• No se pueden definir definiciones de índice de texto completo en las vistas.
• No se pueden crear vistas temporales, ni vistas dentro de tablas temporales.
• Las vistas, las tablas o las funciones que participan en una vista creada con la cláusula SCHEMABINDING no se pueden quitar, a menos que se quite o cambie esa vista de forma que deje de tener un enlace de esquema. Además, las instrucciones ALTER TABLE sobre tablas que participan en vistas que tienen enlaces de esquemas provocarán un error si estas instrucciones afectan a la definición de la vista.
• Si una vista no se crea con la cláusula SCHEMABINDING, debe ejecutarse sp_refreshview cuando se realicen cambios en los objetos subyacentes de la vista que afecten a la definición de ésta. De lo contrario, la vista puede generar resultados inesperados cuando se realiza una consulta.
• No puede emitir consultas de texto completo en una vista, aunque una definición de vista puede incluir una consulta de texto completo si ésta hace referencia a una tabla configurada para la indización de texto completo.
• Debe especificar el nombre de todas las columnas de la vista en el caso de que:
o Alguna de las columnas de la vista derive de una expresión aritmética, una función integrada o una constante.
o Dos o más columnas de la vista tuviesen, en caso contrario, el mismo nombre (normalmente, debido a que la definición de la vista incluye una combinación y las columnas de dos o más tablas diferentes tienen el mismo nombre).
o Desee darle a una columna de la vista un nombre distinto del de la columna de la que deriva. (También puede cambiar el nombre de las columnas en la vista). Una columna de una vista hereda los tipos de datos de la columna de la que deriva, aunque no cambie su nombre.
o De lo contrario, no necesitará especificar nombres de columnas cuando cree la vista. SQL Server asigna a las columnas de la vista los mismos nombres y tipos de datos de las columnas a las que se hace referencia en la consulta que define la vista. La lista de selección puede ser una enumeración completa o parcial de los nombres de las columnas de las tablas base.
Para crear una vista, debe contar con el permiso del propietario de la base de datos y, si la vista se crea con la cláusula SCHEMABINDING, debe contar también con los permisos correspondientes para las tablas o las vistas a las que se haga referencia en la definición de la vista.
De forma predeterminada, a medida que se agregan o se actualizan filas mediante una vista, éstas desaparecen del ámbito de la vista cuando dejan de cumplir los criterios de la consulta que define la vista. Por ejemplo, se puede crear una consulta que defina una vista cuya misión sea recuperar todas las filas de una tabla en las que el salario del empleado no supere los 30.000 dólares. Si el salario del empleado asciende a 32.000 dólares, la consulta de la vista ya no mostrará la fila correspondiente a ese empleado, ya que su salario no cumple el criterio especificado por la vista. No obstante, la cláusula WITH CHECK OPTION exige que todas las instrucciones de modificación de datos ejecutadas en la vista se ajusten a los criterios especificados en la instrucción SELECT que define la vista. Si utiliza esta cláusula, no podrá modificar las filas de forma que desaparezcan de la vista. Cualquier modificación que provoque esto, se anula y aparece un error.
Crea una tabla virtual cuyo contenido (columnas y filas) se define mediante una consulta. Utilice esta instrucción para crear una vista de los datos de una o varias tablas de la base de datos. Por ejemplo, una vista se puede utilizar para lo siguiente:
• Para centrar, simplificar y personalizar la percepción que cada usuario tiene de la base de datos.
• Como mecanismo de seguridad, que permite a los usuarios obtener acceso a los datos por medio de la vista, pero no les concede el permiso de obtener acceso directo a las tablas base subyacentes.
• Para proporcionar una interfaz compatible con versiones anteriores para emular una tabla cuyo esquema ha cambiado.
CREATE VIEW [ schema_name . ] view_name [ (column [ ,...n ] ) ]
[ WITH <view_attribute> [ ,...n ] ]
AS select_statement
[ WITH CHECK OPTION ] [ ; ]
<view_attribute> ::=
{
[ ENCRYPTION ]
[ SCHEMABINDING ]
[ VIEW_METADATA ] }
FUENTE BIBLIOGRAFICA:
http://www.desarrolloweb.com/faq/319.php
http://msdn.microsoft.com/es-mx/library/ms189918(v=sql.100).aspx
ATTE: KARINA ACUÑA SANTANA.
Hola amiga sobre tu información aportada en este inciso me gusto por que das caracteristicas que sobresalen de las vistas en su diseño e implementacion.
Atentamente: Sinaí vargas Garcia
sinay vargas- Mensajes : 68
Fecha de inscripción : 29/01/2013
Replica a una compañera
IXHEL L. escribió:4) Investigar cómo podría diseñar e implementar vistas en base de datos distintas. Comparta en este foro su código fuente en Lenguaje SQL.
Vistas
En el modelo de datos relacional la forma de guardar la información no es la mejor para ver los datos. Una vista es una consulta, que refleja el contenido de una o más tablas, desde la que se puede acceder a los datos como si fuera una tabla.
Dos son las principales razones por las que podemos crear vistas.
• Seguridad, nos pueden interesar que los usuarios tengan acceso a una parte de la información que hay en una tabla, pero no a toda la tabla.
• Comodidad, como hemos dicho el modelo relacional no es el más comodo para visualizar los datos, lo que nos puede llevar a tener que escribir complejas sentencias SQL, tener una vista nos simplifica esta tarea.
Vistas en SQL:
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 VIEW <nombre_vista>
AS
(<sentencia_select>);
Para poder eliminar la vista a través de la sentencia DROP VIEW.
Vista en MYSQL:s
CREATE [OR REPLACE] [ALGORITHM = {UNDEFINED | MERGE | TEMPTABLE}]
VIEW nombre_vista [(columnas)]
AS sentencia_select
[WITH [CASCADED | LOCAL] CHECK OPTION]
att: ixhel luviano mojica
Hola amiga sobre tu aportación sobre este inciso me gusto mucho por que fue breve pero muy bien explicada que nos dimos cuenta que las vistas son consultas de diferentes tablas y ademas nos has poporcionado su sintaxis de como implementarla. me gusto mucho.
Atentamente:Sinai vargas garcia
sinay vargas- Mensajes : 68
Fecha de inscripción : 29/01/2013
Replica a un compañero
pablodelgadogomez escribió:1) Investigar algunos conceptos básicos de: "Estructura e Integridad de bases de datos", así como: "comandos básicos del LMD para poder realizar la Creación de bases de datos y la Definición del esquema de integridad. Debe indicar que tipo de fuentes (Libros, revistas, etc.) y TICs (Wikis, Foros, Edu-Blogs, WebQuest, EVE-A) se han involucrado para concretar la investigación. Y de acuerdo con lo investigado, debe elaborar un resumen o tabla comparativa o mapa conceptual o diagrama que permita representar (en texto o gráficamente) los conceptos clave, el cual debe compartir en este foro.
Estos son algunos conceptos básicos que estaremos viendo a lo largo de la Unidad 2: Estructura e integridad de bases de datos.C O N C E P T O S
Integridad de datos: se refiere al estado de corrección y completitud de los datos ingresados en una base de datos.
Integridad de entidad: define una fila como entidad única para una tabla determinada. La integridad de entidad exige la integridad de las columnas de los identificadores o la clave principal de una tabla, mediante índices y restricciones UNIQUE, o restricciones PRIMARY KEY.
Integridad de dominio: viene dada por la validez de las entradas para una columna determinada. Puede exigir la integridad de dominio para restringir el tipo mediante tipos de datos, el formato mediante reglas y restricciones CHECK, o el intervalo de valores posibles mediante restricciones FOREIGN KEY, restricciones CHECK, definiciones DEFAULT, definiciones NOT NULL y reglas.
Estructura de la base de datos: hace referencia a los tipos de datos, los vínculos o relaciones y las restricciones que deben cumplir esos datos (integridad de datos y redundancia de datos).
Integridad referencial: protege las relaciones definidas entre las tablas cuando se crean o se eliminan filas.
lenguaje de Manipulación de Datos (Data Manipulation Languaje (DML): es un lenguaje proporcionado por el sistema de gestión de bases de datos que permite a los usuarios de la misma llevar a cabo las tareas de consulta o manipulación de los datos, organizados por el modelo de datos adecuado.
_______________________________________________________________________________________________________COMANDOS UTILIZADOS EN DML
INSERT: Añade registros por lotes de datos (filas) en una tabla en una única operación.
INSERT INTO nombre-tabla [({nombre-columna(s),})] VALUES ({expresión,})
Ej: Ingresar la carrera con código 150
INSERT INTO carrera VALUES (150,'Ingenieria de Sistemas');
UPDATE: Modifica los campos indicados con el valor especificado en la sentencia.
UPDATE nombre-tabla SET {nombre-columna = expresión,} [WHERE condición];
Ej: Modificar el patrimonio del estudiante cuyo código es 98115310
UPDATE estudiante SET pat_est = 15000000 WHERE cod_est = 98115310;
DELETE: Elimina los registros (filas) indicados en la sentencia.
DELETE FROM nombre-tabla [WHERE condición];
Ej: Eliminar el estudiante cuyo código es 98115310
DELETE FROM estudiante WHERE cod_est = 98115310;
Si se omite la opcion WHERE eliminara todas las filas de la tabla estudiante.
FUENTES CONSULTADAS
http://chiokapy.blogspot.mx/2011/08/comandos-de-lmd.html
http://www.alegsa.com.ar/Dic/estructura%20de%20la%20base%20de%20datos.php
http://www.alegsa.com.ar/Dic/integridad%20de%20datos.php
http://msdn.microsoft.com/es-mx/library/ms184276(v=sql.105).aspx
ESPERO LES SIRVA DE ALGO LA INFORMACIÓN.
PABLO DELGADO
Hola sobre tu información proporcionada en este inciso esta muy bien por que fuistes paso por paso definiendo cada concepto que surgía de está y me gusto mucho. sigue así
Atentamente: sinaí vargas garcia
sinay vargas- Mensajes : 68
Fecha de inscripción : 29/01/2013
Re: 2.- Lenguaje De Manipulación De Datos (Estructura e Integridad De Bases De Datos
sinay vargas escribió:1) Investigar algunos conceptos básicos de: "Estructura e Integridad de bases de datos", así como: "comandos básicos del LMD para poder realizar la Creación de bases de datos y la Definición del esquema de integridad. Debe indicar que tipo de fuentes (Libros, revistas, etc.) y TICs (Wikis, Foros, Edu-Blogs, WebQuest, EVE-A) se han involucrado para concretar la investigación. Y de acuerdo con lo investigado, debe elaborar un resumen o tabla comparativa o mapa conceptual o diagrama que permita representar (en texto o gráficamente) los conceptos clave, el cual debe compartir en este foro.
Sobre las información que obtuve respecto a lo que pide este inciso es lo siguiente:
ESTRUCTURA DE BASE DE DATOS
La estructura de una base de datos hace referencia a los tipos de datos, los vínculos o relaciones y las restricciones que deben cumplir esos datos (integridad de datos y redundancia de datos).Dentro de la estructura de una base de datos encontramos:
Integridad de datos
Redundancia de datos
La estructura de una base de datos es diseñada o descripta empleando algún tipo de modelo de datos.
Las diferentes estructuras de base de datos
Modelo relacional de base de datos
Representa al mundo real mediante tablas relacionadas entre sí por columnas.
Modelo de red
Se representa al mundo real como registros lógicos que representan a una entidad y que se relacionan entre sí por medio de flechas.
Modelo jerárquico
Tiene forma de árbol invertido. Un padre puede tener varios hijos pero cada hijo sólo puede tener un padre.
Un ejemplo a modo de descripción de la estructura de una base de datos puede ser:
ALUMNO: numero de alumnno (entero de 6 números), nombre (cadena de 30 caracteres), apellido (cadena de 30 caracteres), año de nacimiento (entero de 4 números), especialidad (entero de 3 números).
ESPECIALIDAD: numero de especialidad (entero de 3 números), nombre de especialidad (cadena de 30 caracteres).
Estructura de datos relacional
Es aquella cuyos usuarios la perciben como un conjunto de tablas.
Una relación puede representarse mediante una tabla (de hecho es usual y aceptable utilizar el término tabla para referirse a una relación) podríamos decir que:
Una tupla corresponde a una fila de la tabla.
Un atributo corresponde a una columna de la tabla (equivale a un campo de un registro).
Un dominio es una colección de valores, de los cuales uno o más atributos obtienen sus valores reales.
Clave primaria Es posible que una relación posea más de una clave candidata, en ese caso, se escoge una de ellas como clave primaria y el resto se denominan claves alternativas.
Clave ajena o extranjera es un atributo (o conjunto de atributos) de una relación R1 que es clave primaria de otra relación R2.
INTEGRIDAD DE BASE DE DATOS
La integridad Proporciona un medio de asegurar que los cambios que se hacen en la base de datos por usuarios autorizados no resultan en una pérdida de consistencia de los datos.
La integridad de los datos garantiza la calidad de los datos de la base de datos.
En una base de datos relacional, las relaciones están sujetas a ciertas reglas de integridad:
Integridad de entidad: “Ningún atributo que participe en una clave principal puede tener valores nulos.
Integridad referencial: “No deben existir valores de clave ajena sin concordancia.”
La integridad de datos pertenece a una de las siguientes categorías:
La integridad de entidad define una fila como entidad única para una tabla determinada.
La integridad de dominio viene dada por la validez de las entradas para una columna determinada. Puede exigir la integridad de dominio para restringir el tipo mediante tipos de datos, el formato mediante reglas y restricciones CHECK, o el intervalo de valores posibles mediante restricciones FOREIGN KEY, restricciones CHECK, definiciones DEFAULT, definiciones NOT NULL y reglas.
La integridad referencial protege las relaciones definidas entre las tablas cuando se crean o se eliminan filas.
La integridad definida por el usuario permite definir reglas de empresa específicas que no pertenecen a ninguna otra categoría de integridad.
Todas las categorías de integridad admiten la integridad definida por el usuario. Esto incluye todas las restricciones de nivel de columna y nivel de tabla en CREATE TABLE, procedimientos almacenados y desencadenadores.
COMANDOS BASICOS DEL LMD
Los comandos son instrucciones que realizan acciones sobre las tablas de la base de datos.
Un lenguaje de manipulación de datos (en inglés: DML, data manipulation language) permite a los usuarios manejar o tener acceso a los datos que están organizados por medio del modelo apropiado.
Existen básicamente dos tipos de DML o LMD:
De procedimientos: Necesitan que el usuario especifique cuáles datos quiere y cómo deben obtenerse.
Sin procedimientos: Requieren que el usuario especifique cuáles datos quiere sin especificar cómo obtenerlos.
Los comandos básicos de LMD (Lenguaje de Manipulación de Datos) son:
INSERT
Una sentencia INSERT es para agrega uno o más registros a una (y sólo una) tabla en una única operación de una base de datos relacional.
Sintaxis
INSERT INTO tabla (columna1,[columna2,…]) VALUES (valor1, [valor2,…])
SELECT
Es para realizar consulta los registros que satisfagan un determinado criterio.
Sintaxis
Select * from [nombre de la tabla]
UPDATE
Es para modificar los campos indicados con el valor especificado en la sentencia.
Sintaxis
nombre-tabla SET {nombre-columna = expresión,} [WHERE condición];
DELETE
Se utiliza para Elimina los registros (filas) indicados en la sentencia.
Sintaxis
DELETE FROM estudiante WHERE cod_est = 98115310;
DEFINICION DE ESQUEMA DE INTEGRIDAD
Integridad: Consiste en conservar la seguridad en un sistema que se permite a múltiples usuarios el acceso al sistema y compartir la base de datos. Tiene como función proteger la base de datos contra operaciones que introduzcan inconsistencias en los datos.
Un control de integridad o restricciones es aquel que nos permite definir con precisión el rango de valores validos para un elemento y/o las operaciones que serán consideraciones validas en la relación de tale elementos.
El objetivo primordial de un control de integridad es la reducción de la inconsistencia en la BD.
Las restricciones de integridad normalmente se aplican en tres niveles:
• Un Atributo Simple: Se define un dominio del atributo que es totalmente independiente del resto del entorno de la Base de Datos.
• Un Atributo Dependiente de Otro: Se definen subconjuntos de dominios posibles para un atributo X según el valor que previamente a sido asignado al atributo W.
• Relaciones entre Tuplas de una o varias Tablas: Se especifican valores posibles para registros completos según los valores acumulados registros previos o por valores existentes en registros de otras tablas.
Fuentes consultada
http://www.slideshare.net/luiscfh/estructuras-de-base-de-datos
http://www.slideshare.net/142918/estructura-de-las-bases-de-datos-5670614
http://www.ies-bezmiliana.org/departamentos/informat/Ciclo%20grado%20superior/bases%20de%20datos/Tema-3-BD.PDF
http://labredes.itcolima.edu.mx/fundamentosbd/sd_u3_3.htm
http://msdn.microsoft.com/es-mx/library/ms184276(v=sql.105).aspx
http://e-ducativa.catedu.es/44700165/aula/archivos/repositorio//1000/1083/html/11_comandos_lmd.html
http://html.rincondelvago.com/bases-de-datos_9.html
http://html.rincondelvago.com/lenguajes-de-manipulacion-y-definicion-de-datos.html
http://chiokapy.blogspot.mx/2011/08/comandos-de-lmd.html
http://yoalo.wikispaces.com/2.2+Definicion+Esquema+de+Integridad
http://tutorialdeadministraciondebasededatos.blogspot.mx/2009/08/22-esquema-de-integridad.html
Esta es la información que obtuve de estas fuentes de investigación.Atentamente: SINAI VARGAS GARCIAIA
MUY BIEN TU INFORMACION, ME PARECE MUY BIEN REDACTADA
hoguer tapia- Mensajes : 11
Fecha de inscripción : 12/02/2013
Re: 2.- Lenguaje De Manipulación De Datos (Estructura e Integridad De Bases De Datos
1) Investigar algunos conceptos básicos de: "Estructura e Integridad de bases de datos", así como: "comandos básicos del LMD para poder realizar la Creación de bases de datos y la Definición del esquema de integridad. Debe indicar que tipo de fuentes (Libros, revistas, etc.) y TICs (Wikis, Foros, Edu-Blogs, WebQuest, EVE-A) se han involucrado para concretar la investigación. Y de acuerdo con lo investigado, debe elaborar un resumen o tabla comparativa o mapa conceptual o diagrama que permita representar (en texto o gráficamente) los conceptos clave, el cual debe compartir en este foro.
COMANDOS DE LMD
En el tema se trata SQL como un lenguaje de consultas, por lo que se desarrollará el lenguaje de manipulación de datos o LMD. Los comandos utilizados en este lenguaje son:
SELECT
Consulta los registros que satisfagan un determinado criterio.
INSERT
Añade registros por lotes de datos (filas) en una tabla en una única operación.
UPDATE
Modifica los campos indicados con el valor especificado en la sentencia.
DELETE
Elimina los registros (filas) indicados en la sentencia.
Estos comandos dividen las consultas en dos tipos:
•Consultas de selección → SELECT.- muestran toda o parte de la información contenida en las tablas.
•Consultas de acción → INSERT, UPDATE Y DELETE.- modifican el contenido inicial de las tablas.
Existe un tercer tipo de consultas denominadas de unión que devuelven en una única consulta el resultado de varias consultas de selección.
INSERCION
INSERT INTO nombre-tabla [({nombre-columna(s),})] VALUES ({expresión,})
Ej: Ingresar la carrera con código 150
INSERT INTO carrera VALUES (150,'Ingenieria de Sistemas');
ACTUALIZACION
UPDATE nombre-tabla SET {nombre-columna = expresión,} [WHERE condición];
Ej: Modificar el patrimonio del estudiante cuyo código es 98115310
UPDATE estudiante SET pat_est = 15000000 WHERE cod_est = 98115310;
BORRADO
DELETE FROM nombre-tabla [WHERE condición];
Ej: Eliminar el estudiante cuyo código es 98115310
DELETE FROM estudiante WHERE cod_est = 98115310;
Si se omite la opcion WHERE eliminara todas las filas de la tabla estudiante.
ESQUEMA DE INTEGRIDAD
Un control de integridad o restricciones es aquel que nos permite definir con precisión el rango de valores validos para un elemento y/o las operaciones que serán consideraciones validas en la relación de tale elementos.
•
El objetivo primordial de un control de integridad es la reducción de la inconsistencia en la BD.
Las restricciones de integridad normalmente se aplican en tres niveles:
1.
UN ATRIBUTO SIMPLE.- Se define un dominio del atributo que es totalmente independiente del resto del entorno de la Base de Datos.
2.
UN ATRIBUTO DEPENDIENTE DE OTRO.- Se definen subconjuntos de dominios posibles para un atributo X según el valor que previamente a sido asignado al atributo W.
3.
RELACIONES ENTRE TUPLAS DE UNA O VARIAS TABLAS.- Se especifican valores posibles para registros completos según los valores acumulados registros previos o por valores existentes en registros de otras tablas.
COMANDOS DE LMD
En el tema se trata SQL como un lenguaje de consultas, por lo que se desarrollará el lenguaje de manipulación de datos o LMD. Los comandos utilizados en este lenguaje son:
SELECT
Consulta los registros que satisfagan un determinado criterio.
INSERT
Añade registros por lotes de datos (filas) en una tabla en una única operación.
UPDATE
Modifica los campos indicados con el valor especificado en la sentencia.
DELETE
Elimina los registros (filas) indicados en la sentencia.
Estos comandos dividen las consultas en dos tipos:
•Consultas de selección → SELECT.- muestran toda o parte de la información contenida en las tablas.
•Consultas de acción → INSERT, UPDATE Y DELETE.- modifican el contenido inicial de las tablas.
Existe un tercer tipo de consultas denominadas de unión que devuelven en una única consulta el resultado de varias consultas de selección.
INSERCION
INSERT INTO nombre-tabla [({nombre-columna(s),})] VALUES ({expresión,})
Ej: Ingresar la carrera con código 150
INSERT INTO carrera VALUES (150,'Ingenieria de Sistemas');
ACTUALIZACION
UPDATE nombre-tabla SET {nombre-columna = expresión,} [WHERE condición];
Ej: Modificar el patrimonio del estudiante cuyo código es 98115310
UPDATE estudiante SET pat_est = 15000000 WHERE cod_est = 98115310;
BORRADO
DELETE FROM nombre-tabla [WHERE condición];
Ej: Eliminar el estudiante cuyo código es 98115310
DELETE FROM estudiante WHERE cod_est = 98115310;
Si se omite la opcion WHERE eliminara todas las filas de la tabla estudiante.
ESQUEMA DE INTEGRIDAD
Un control de integridad o restricciones es aquel que nos permite definir con precisión el rango de valores validos para un elemento y/o las operaciones que serán consideraciones validas en la relación de tale elementos.
•
El objetivo primordial de un control de integridad es la reducción de la inconsistencia en la BD.
Las restricciones de integridad normalmente se aplican en tres niveles:
1.
UN ATRIBUTO SIMPLE.- Se define un dominio del atributo que es totalmente independiente del resto del entorno de la Base de Datos.
2.
UN ATRIBUTO DEPENDIENTE DE OTRO.- Se definen subconjuntos de dominios posibles para un atributo X según el valor que previamente a sido asignado al atributo W.
3.
RELACIONES ENTRE TUPLAS DE UNA O VARIAS TABLAS.- Se especifican valores posibles para registros completos según los valores acumulados registros previos o por valores existentes en registros de otras tablas.
anyytta- Mensajes : 33
Fecha de inscripción : 09/05/2012
Edad : 32
RESPUESTA LA REACTIVO #4
4) Investigar como podría diseñar e implementar vistas en base de datos distintas. Comparta en este foro su código fuente en Lenguaje SQL
Para crear una vista yo encontré que se puede crear mediante el comando:
CREATE VIEW (Transact-SQL)
Crea una tabla virtual cuyo contenido (columnas y filas) se define mediante una consulta. Use esta instrucción para crear una vista de los datos de una o varias tablas de la base de datos. Por ejemplo, una vista se puede usar para lo siguiente:
• Para centrar, simplificar y personalizar la percepción de la base de datos para cada usuario.
• Como mecanismo de seguridad, que permite a los usuarios obtener acceso a los datos por medio de la vista, pero no les conceden el permiso de obtener acceso directo a las tablas base subyacentes de la vista.
• Para proporcionar una interfaz compatible con versiones anteriores para emular una tabla cuyo esquema ha cambiado.
Cuya sintaxis es:
CREATE VIEW [ schema_name . ] view_name [ (column [ ,...n ] ) ]
[ WITH <view_attribute> [ ,...n ] ]
AS select_statement
[ WITH CHECK OPTION ] [ ; ]
<view_attribute> ::=
{
[ ENCRYPTION ]
[ SCHEMABINDING ]
[ VIEW_METADATA ] }
Donde:
Es el nombre del esquema al que pertenece la vista.
Es el nombre de la vista. Los nombres de las vistas deben cumplir las reglas de los identificadores. La especificación del nombre del propietario de la vista es opcional.
Es el nombre que se va a usar para una columna en una vista. Solo se necesita un nombre de columna cuando una columna proviene de una expresión aritmética, una función o una constante; cuando dos o más columnas puedan tener el mismo nombre, normalmente debido a una combinación; o cuando una columna de una vista recibe un nombre distinto al de la columna de la que proviene. Los nombres de columna se pueden asignar también en la instrucción SELECT.
Si no se especifica el parámetro column, las columnas de la vista adquieren los mismos nombres que las columnas de la instrucción SELECT.
Especifica las acciones que va a llevar a cabo la vista.
Es la instrucción SELECT que define la vista. Dicha instrucción puede usar más de una tabla y otras vistas. Se necesitan permisos adecuados para seleccionar los objetos a los que se hace referencia en la cláusula SELECT de la vista que se ha creado.
Una vista no tiene por qué ser un simple subconjunto de filas y de columnas de una tabla determinada. Es posible crear una vista que use más de una tabla u otras vistas mediante una cláusula SELECT de cualquier complejidad.
En una definición de vista indizada, la instrucción SELECT debe ser una instrucción de una única tabla o una instrucción JOIN de varias tablas con agregación opcional.
Las cláusulas SELECT de una definición de vista no pueden incluir lo siguiente:
• Cláusulas COMPUTE o COMPUTE BY
• Una cláusula ORDER BY, a menos que también haya una cláusula TOP en la lista de selección de la instrucción SELECT
• La palabra clave INTO
• La cláusula OPTION
• Una referencia a una tabla temporal o a una variable de tabla
Dado que select_statement usa la instrucción SELECT, es válido usar las sugerencias <join_hint> y <table_hint> como se especifican en la cláusula FROM. Para obtener más información, vea FROM (Transact-SQL) y SELECT (Transact-SQL).
En select_statement se pueden usar funciones y varias instrucciones SELECT separadas por UNION o UNION ALL.
Exige que todas las instrucciones de modificación de datos ejecutadas en la vista sigan los criterios establecidos en select_statement. Cuando una fila se modifica mediante una vista, WITH CHECK OPTION garantiza que los datos permanezcan visibles en toda la vista después de confirmar la modificación.
Cifra las entradas de sys.syscomments que contienen el texto de la instrucción CREATE VIEW. El uso de WITH ENCRYPTION evita que la vista se publique como parte de la replicación de SQL Server.
Enlaza la vista al esquema de las tablas subyacentes. Cuando se especifica SCHEMABINDING, las tablas base no se pueden modificar de una forma que afecte a la definición de la vista. En primer lugar, se debe modificar o quitar la propia definición de la vista para quitar las dependencias en la tabla que se va a modificar. Cuando se usa SCHEMABINDING, select_statement debe incluir los nombres de dos partes (schema.object) de las tablas, vistas o funciones definidas por el usuario a las que se hace referencia. Todos los objetos a los que se hace referencia se deben encontrar en la misma base de datos.
Las vistas o las tablas que participan en una vista creada con la cláusula SCHEMABINDING no se pueden quitar a menos que se quite o cambie esa vista de forma que deje de tener un enlace de esquema. En caso contrario, Motor de base de datos genera un error. Además, la ejecución de las instrucciones ALTER TABLE en tablas que participan en vistas que tienen enlaces de esquema provoca un error si estas instrucciones afectan a la definición de la vista.
V
Especifica que la instancia de SQL Server devolverá a las API de DB-Library, ODBC y OLE DB la información de metadatos sobre la vista en vez de las tablas base cuando se soliciten los metadatos del modo de exploración para una consulta que hace referencia a la vista. Los metadatos del modo de exploración son metadatos adicionales que la instancia de SQL Server devuelve a estas API del lado cliente. Estos metadatos permiten a las API del lado cliente implementar cursores del lado cliente actualizables. Los metadatos del modo de exploración incluyen información sobre la tabla base a la que pertenecen las columnas del conjunto de resultados.
Para las vistas creadas con VIEW_METADATA, los metadatos del modo de exploración devuelven el nombre de vista y no los nombres de tablas base cuando describen columnas de la vista en el conjunto de resultados.
Cuando se crea una vista mediante WITH VIEW_METADATA, todas sus columnas, excepto una columna timestamp, son actualizables si la vista tiene los desencadenadores INSTEAD OF INSERT o INSTEAD OF UPDATE. Para obtener más información acerca de las vistas actualizables, vea la sección Notas.
ESPERO LES SIRVA MI RESPUESTA SALUDOS
ATTE: JUDITH JAZMIN BENITEZ CHARCO
Para crear una vista yo encontré que se puede crear mediante el comando:
CREATE VIEW (Transact-SQL)
Crea una tabla virtual cuyo contenido (columnas y filas) se define mediante una consulta. Use esta instrucción para crear una vista de los datos de una o varias tablas de la base de datos. Por ejemplo, una vista se puede usar para lo siguiente:
• Para centrar, simplificar y personalizar la percepción de la base de datos para cada usuario.
• Como mecanismo de seguridad, que permite a los usuarios obtener acceso a los datos por medio de la vista, pero no les conceden el permiso de obtener acceso directo a las tablas base subyacentes de la vista.
• Para proporcionar una interfaz compatible con versiones anteriores para emular una tabla cuyo esquema ha cambiado.
Cuya sintaxis es:
CREATE VIEW [ schema_name . ] view_name [ (column [ ,...n ] ) ]
[ WITH <view_attribute> [ ,...n ] ]
AS select_statement
[ WITH CHECK OPTION ] [ ; ]
<view_attribute> ::=
{
[ ENCRYPTION ]
[ SCHEMABINDING ]
[ VIEW_METADATA ] }
Donde:
- chema_name
Es el nombre del esquema al que pertenece la vista.
- view_name
Es el nombre de la vista. Los nombres de las vistas deben cumplir las reglas de los identificadores. La especificación del nombre del propietario de la vista es opcional.
- column
Es el nombre que se va a usar para una columna en una vista. Solo se necesita un nombre de columna cuando una columna proviene de una expresión aritmética, una función o una constante; cuando dos o más columnas puedan tener el mismo nombre, normalmente debido a una combinación; o cuando una columna de una vista recibe un nombre distinto al de la columna de la que proviene. Los nombres de columna se pueden asignar también en la instrucción SELECT.
Si no se especifica el parámetro column, las columnas de la vista adquieren los mismos nombres que las columnas de la instrucción SELECT.
- AS
Especifica las acciones que va a llevar a cabo la vista.
- select_statement
Es la instrucción SELECT que define la vista. Dicha instrucción puede usar más de una tabla y otras vistas. Se necesitan permisos adecuados para seleccionar los objetos a los que se hace referencia en la cláusula SELECT de la vista que se ha creado.
Una vista no tiene por qué ser un simple subconjunto de filas y de columnas de una tabla determinada. Es posible crear una vista que use más de una tabla u otras vistas mediante una cláusula SELECT de cualquier complejidad.
En una definición de vista indizada, la instrucción SELECT debe ser una instrucción de una única tabla o una instrucción JOIN de varias tablas con agregación opcional.
Las cláusulas SELECT de una definición de vista no pueden incluir lo siguiente:
• Cláusulas COMPUTE o COMPUTE BY
• Una cláusula ORDER BY, a menos que también haya una cláusula TOP en la lista de selección de la instrucción SELECT
• La palabra clave INTO
• La cláusula OPTION
• Una referencia a una tabla temporal o a una variable de tabla
Dado que select_statement usa la instrucción SELECT, es válido usar las sugerencias <join_hint> y <table_hint> como se especifican en la cláusula FROM. Para obtener más información, vea FROM (Transact-SQL) y SELECT (Transact-SQL).
En select_statement se pueden usar funciones y varias instrucciones SELECT separadas por UNION o UNION ALL.
- CHECK OPTION
Exige que todas las instrucciones de modificación de datos ejecutadas en la vista sigan los criterios establecidos en select_statement. Cuando una fila se modifica mediante una vista, WITH CHECK OPTION garantiza que los datos permanezcan visibles en toda la vista después de confirmar la modificación.
- ENCRYPTION
Cifra las entradas de sys.syscomments que contienen el texto de la instrucción CREATE VIEW. El uso de WITH ENCRYPTION evita que la vista se publique como parte de la replicación de SQL Server.
- SCHEMABINDING
Enlaza la vista al esquema de las tablas subyacentes. Cuando se especifica SCHEMABINDING, las tablas base no se pueden modificar de una forma que afecte a la definición de la vista. En primer lugar, se debe modificar o quitar la propia definición de la vista para quitar las dependencias en la tabla que se va a modificar. Cuando se usa SCHEMABINDING, select_statement debe incluir los nombres de dos partes (schema.object) de las tablas, vistas o funciones definidas por el usuario a las que se hace referencia. Todos los objetos a los que se hace referencia se deben encontrar en la misma base de datos.
Las vistas o las tablas que participan en una vista creada con la cláusula SCHEMABINDING no se pueden quitar a menos que se quite o cambie esa vista de forma que deje de tener un enlace de esquema. En caso contrario, Motor de base de datos genera un error. Además, la ejecución de las instrucciones ALTER TABLE en tablas que participan en vistas que tienen enlaces de esquema provoca un error si estas instrucciones afectan a la definición de la vista.
V
- IEW_METADATA
Especifica que la instancia de SQL Server devolverá a las API de DB-Library, ODBC y OLE DB la información de metadatos sobre la vista en vez de las tablas base cuando se soliciten los metadatos del modo de exploración para una consulta que hace referencia a la vista. Los metadatos del modo de exploración son metadatos adicionales que la instancia de SQL Server devuelve a estas API del lado cliente. Estos metadatos permiten a las API del lado cliente implementar cursores del lado cliente actualizables. Los metadatos del modo de exploración incluyen información sobre la tabla base a la que pertenecen las columnas del conjunto de resultados.
Para las vistas creadas con VIEW_METADATA, los metadatos del modo de exploración devuelven el nombre de vista y no los nombres de tablas base cuando describen columnas de la vista en el conjunto de resultados.
Cuando se crea una vista mediante WITH VIEW_METADATA, todas sus columnas, excepto una columna timestamp, son actualizables si la vista tiene los desencadenadores INSTEAD OF INSERT o INSTEAD OF UPDATE. Para obtener más información acerca de las vistas actualizables, vea la sección Notas.
ESPERO LES SIRVA MI RESPUESTA SALUDOS
ATTE: JUDITH JAZMIN BENITEZ CHARCO
Judith Benitez Charco- Mensajes : 26
Fecha de inscripción : 29/01/2013
Edad : 31
Respuesta al reactivo #2
2) Investigar acerca del uso de vistas, procedimientos almacenados y disparadores (Trigger’s). Elaborar un resumen acerca de lo investigado, donde explique el uso y la importancia de dichos elementos, el cual, debe compartir en este foro. Finalmente, debe discutir en este foro acerca del uso y la importancia de la creación e implementación de vistas, procedimientos almacenados y disparadores, haciendo énfasis en que términos podrían brindar seguridad e integridad dichos elementos a una base de datos alojadas en un servidor de datos.
A lo que investigue sobre el reactivo 2 llegue a la siguiente conclusión.
Una vista es una consulta, que refleja el contenido de una o más tablas, desde la que se puede acceder a los datos como si fuera una tabla.
Dos son las principales razones por las que podemos crear vistas.
• Seguridad, nos pueden interesar que los usuarios tengan acceso a una parte de la información que hay en una tabla, pero no a toda la tabla.
• Comodidad, como hemos dicho el modelo relacional no es el más cómodo para visualizar los datos, lo que nos puede llevar a tener que escribir complejas sentencias SQL, tener una vista nos simplifica esta tarea.
Las vistas no tienen una copia física de los datos, son consultas a los datos que hay en las tablas, por lo que si actualizamos los datos de una vista, estamos actualizando realmente la tabla, y si actualizamos la tabla estos cambios serán visibles desde la vista.
En si la vista es un objeto de la base de datos que es un acceso recurrente a la tabla, que se genera principalmente para tener seguridad por si se quiere ocultar alguna información de la tabla además de que es solo una consulta, por lo tanto no se puede modificar los datos de la tabla y es por si se tiene una consulta que se utiliza mucho, se guarda como vista y así pueden tenerla disponible en cualquier momento.
Los procedimientos almacenados pueden mejorar el rendimiento ya que se necesita enviar menos información entre el servidor y el cliente. El intercambio que hay es que aumenta la carga del servidor de la base de datos ya que la mayoría del trabajo se realiza en la parte del servidor y no en el cliente. Se puede decir que los procedimientos almacenados son un conjunto de comandos que pueden ser ejecutados directamente en el servidor, es decir, será ejecutado por el servidor de Base de Datos y no por el programa cliente que lo accede, permitiendo la ejecución de una acción o conjunto de acciones específicas.
Los usos de los procedimientos almacenados se aplican en la validación de datos, integrados dentro de la estructura del banco de datos. Los procedimientos almacenados usados con tal propósito se llaman comúnmente disparadores. También pueden ser usados para el control de gestión de operaciones, y ejecutar procedimientos almacenados dentro de una transacción de tal manera que las transacciones sean efectivamente transparentes para ellos.
Un trigger es una clase especial de procedimiento almacenado que se ejecuta automáticamente cuando se produce un evento en el servidor de bases de datos. Más bien son objetos de la base de datos que ejecutan acciones cuando se producen eventos tanto de DML o DLL como puede ser inserciones, modificaciones, creación de tablas, entre otros.
La estructura básica de un trigger es la siguiente:
• Llamada de activación: es la sentencia que permite "disparar" el código a ejecutar.
• Restricción: es la condición necesaria para realizar el código. Esta restricción puede ser de tipo condicional o de tipo nulidad.
• Acción a ejecutar: es la secuencia de instrucciones a ejecutar una vez que se han cumplido las condiciones iniciales.
El uso de los tiggers es para mejorar la administración de la Base de datos, sin necesidad de contar con que el usuario ejecute la sentencia de SQL, pueden generar valores de columnas, previene errores de datos, sincroniza tablas, modifica valores de una vista, etc. Permite implementar programas basados en paradigma lógico (sistemas expertos, deducción).
La importancia de la creación de procedimientos almacenados es que mejora rendimiento de la base de datos, es muy importante la creación de vistas ya que estas nos proporcionan seguridad a nuestros datos almacenados en nuestra base de datos ya que ninguna otra persona pueda alterar su contenido. Y de los tiggers es que nos permiten realizar algún respaldo antes o después de realizar alguna acción.
FUENTES CONSULTADAS:
• http://c4r3r4.files.wordpress.com/2012/03/t-sql-triggers-procedimientos-almacenados.pdf
• http://www.devjoker.com/contenidos/Tutorial-SQL-/13/Vistas.aspx
• http://www.ecured.cu/index.php/Procedimientos_almacenados
• http://www.devjoker.com/contenidos/catss/238/Procedimientos-almacenados-en-Transact-SQL.aspx
A lo que investigue sobre el reactivo 2 llegue a la siguiente conclusión.
Una vista es una consulta, que refleja el contenido de una o más tablas, desde la que se puede acceder a los datos como si fuera una tabla.
Dos son las principales razones por las que podemos crear vistas.
• Seguridad, nos pueden interesar que los usuarios tengan acceso a una parte de la información que hay en una tabla, pero no a toda la tabla.
• Comodidad, como hemos dicho el modelo relacional no es el más cómodo para visualizar los datos, lo que nos puede llevar a tener que escribir complejas sentencias SQL, tener una vista nos simplifica esta tarea.
Las vistas no tienen una copia física de los datos, son consultas a los datos que hay en las tablas, por lo que si actualizamos los datos de una vista, estamos actualizando realmente la tabla, y si actualizamos la tabla estos cambios serán visibles desde la vista.
En si la vista es un objeto de la base de datos que es un acceso recurrente a la tabla, que se genera principalmente para tener seguridad por si se quiere ocultar alguna información de la tabla además de que es solo una consulta, por lo tanto no se puede modificar los datos de la tabla y es por si se tiene una consulta que se utiliza mucho, se guarda como vista y así pueden tenerla disponible en cualquier momento.
Los procedimientos almacenados pueden mejorar el rendimiento ya que se necesita enviar menos información entre el servidor y el cliente. El intercambio que hay es que aumenta la carga del servidor de la base de datos ya que la mayoría del trabajo se realiza en la parte del servidor y no en el cliente. Se puede decir que los procedimientos almacenados son un conjunto de comandos que pueden ser ejecutados directamente en el servidor, es decir, será ejecutado por el servidor de Base de Datos y no por el programa cliente que lo accede, permitiendo la ejecución de una acción o conjunto de acciones específicas.
Los usos de los procedimientos almacenados se aplican en la validación de datos, integrados dentro de la estructura del banco de datos. Los procedimientos almacenados usados con tal propósito se llaman comúnmente disparadores. También pueden ser usados para el control de gestión de operaciones, y ejecutar procedimientos almacenados dentro de una transacción de tal manera que las transacciones sean efectivamente transparentes para ellos.
Un trigger es una clase especial de procedimiento almacenado que se ejecuta automáticamente cuando se produce un evento en el servidor de bases de datos. Más bien son objetos de la base de datos que ejecutan acciones cuando se producen eventos tanto de DML o DLL como puede ser inserciones, modificaciones, creación de tablas, entre otros.
La estructura básica de un trigger es la siguiente:
• Llamada de activación: es la sentencia que permite "disparar" el código a ejecutar.
• Restricción: es la condición necesaria para realizar el código. Esta restricción puede ser de tipo condicional o de tipo nulidad.
• Acción a ejecutar: es la secuencia de instrucciones a ejecutar una vez que se han cumplido las condiciones iniciales.
El uso de los tiggers es para mejorar la administración de la Base de datos, sin necesidad de contar con que el usuario ejecute la sentencia de SQL, pueden generar valores de columnas, previene errores de datos, sincroniza tablas, modifica valores de una vista, etc. Permite implementar programas basados en paradigma lógico (sistemas expertos, deducción).
La importancia de la creación de procedimientos almacenados es que mejora rendimiento de la base de datos, es muy importante la creación de vistas ya que estas nos proporcionan seguridad a nuestros datos almacenados en nuestra base de datos ya que ninguna otra persona pueda alterar su contenido. Y de los tiggers es que nos permiten realizar algún respaldo antes o después de realizar alguna acción.
FUENTES CONSULTADAS:
• http://c4r3r4.files.wordpress.com/2012/03/t-sql-triggers-procedimientos-almacenados.pdf
• http://www.devjoker.com/contenidos/Tutorial-SQL-/13/Vistas.aspx
• http://www.ecured.cu/index.php/Procedimientos_almacenados
• http://www.devjoker.com/contenidos/catss/238/Procedimientos-almacenados-en-Transact-SQL.aspx
ATENTAMENTE:THANAHI MEDRANO RUIZ
thanahi- Mensajes : 52
Fecha de inscripción : 30/01/2013
RESPUESTA LA REACTIVO #3
3) Investigar acerca de la diferencia que existe entre la integridad de entidad e integridad referencial. Y comparta en este foro, comentarios contundentes al respecto.
Integridad de entidad
La integridad de entidad define una fila como entidad única para una tabla determinada. La integridad de entidad exige la integridad de las columnas de los identificadores o la clave principal de una tabla, mediante índices y restricciones UNIQUE, o restricciones PRIMARY KEY.
La regla de integridad de entidad de la clave primaria dispone que los atributos de la clave primaria de una relación no pueden tener valores nulos.
Esta regla es necesaria para que los valores de las claves primarias puedan identificar las tuplas individuales de las relaciones. Si las claves primarias tuviesen valores nulos, es posible que algunas tuplas no se pudieran distinguir.
Un SGBD relacional tendrá que garantizar el cumplimiento de esta regla de integridad en todas las inserciones y, también, en todas las modificaciones que afecten a atributos que pertenecen a la clave primaria de la relación.
Integridad referencial
La integridad referencial es un sistema de reglas que utilizan la mayoría de las bases de datos relacionales para asegurarse que los registros de tablas relacionadas son válidos y que no se borren o cambien datos relacionados de forma accidental produciendo errores de integridad.
La integridad referencial protege las relaciones definidas entre las tablas cuando se crean o se eliminan filas. En SQL Server la integridad referencial se basa en las relaciones entre claves externas y claves principales o entre claves externas y claves exclusivas, mediante restricciones FOREIGN KEY y CHECK. La integridad referencial garantiza que los valores de clave sean coherentes en las distintas tablas. Para conseguir esa coherencia, es preciso que no haya referencias a valores inexistentes y que, si cambia el valor de una clave, todas las referencias a ella se cambien en consecuencia en toda la base de datos.
Cuando se exige la integridad referencial, SQL Server impide a los usuarios:
• Agregar o cambiar filas en una tabla relacionada si no hay ninguna fila asociada en la tabla principal.
• Cambiar valores en una tabla principal que crea filas huérfanas en una tabla relacionada.
• Eliminar filas de una tabla principal cuando hay filas relacionadas coincidentes.
Una vez definida la estructura de datos del modelo relacional, pasamos a estudiar las reglas de integridad que los datos almacenados en dicha estructura deben cumplir para garantizar que son correctos. Al definir cada atributo sobre un dominio se impone una restricción sobre el conjunto de valores permitidos para cada atributo.
A este tipo de restricciones se les denomina restricciones de dominios. Hay además dos reglas de integridad muy importantes que se deben cumplir en todas las bases de datos relacionales y en todos sus estados o instancias (las reglas se deben cumplir todo el tiempo). Estas reglas son la regla de integridad de entidades y la regla de integridad referencial. Antes de definirlas, es preciso conocer el concepto de nulo.
Por tanto la diferencia entre ambos conceptos es simple solo con decir que la integridad de entidad se basa en que una tabla que contienen una clave primaria o Primary key lo cual hace dicha columna tenga la característica de ser integra mientras que la integridad referencial protege las relaciones creadas en una tabla cuando eliminamos o alteramos dicha tabla, estas están dadas por la clave foránea..
atte: JUDITH JAZMIN BENITEZ CHARCO
Integridad de entidad
La integridad de entidad define una fila como entidad única para una tabla determinada. La integridad de entidad exige la integridad de las columnas de los identificadores o la clave principal de una tabla, mediante índices y restricciones UNIQUE, o restricciones PRIMARY KEY.
La regla de integridad de entidad de la clave primaria dispone que los atributos de la clave primaria de una relación no pueden tener valores nulos.
Esta regla es necesaria para que los valores de las claves primarias puedan identificar las tuplas individuales de las relaciones. Si las claves primarias tuviesen valores nulos, es posible que algunas tuplas no se pudieran distinguir.
Un SGBD relacional tendrá que garantizar el cumplimiento de esta regla de integridad en todas las inserciones y, también, en todas las modificaciones que afecten a atributos que pertenecen a la clave primaria de la relación.
Integridad referencial
La integridad referencial es un sistema de reglas que utilizan la mayoría de las bases de datos relacionales para asegurarse que los registros de tablas relacionadas son válidos y que no se borren o cambien datos relacionados de forma accidental produciendo errores de integridad.
La integridad referencial protege las relaciones definidas entre las tablas cuando se crean o se eliminan filas. En SQL Server la integridad referencial se basa en las relaciones entre claves externas y claves principales o entre claves externas y claves exclusivas, mediante restricciones FOREIGN KEY y CHECK. La integridad referencial garantiza que los valores de clave sean coherentes en las distintas tablas. Para conseguir esa coherencia, es preciso que no haya referencias a valores inexistentes y que, si cambia el valor de una clave, todas las referencias a ella se cambien en consecuencia en toda la base de datos.
Cuando se exige la integridad referencial, SQL Server impide a los usuarios:
• Agregar o cambiar filas en una tabla relacionada si no hay ninguna fila asociada en la tabla principal.
• Cambiar valores en una tabla principal que crea filas huérfanas en una tabla relacionada.
• Eliminar filas de una tabla principal cuando hay filas relacionadas coincidentes.
Una vez definida la estructura de datos del modelo relacional, pasamos a estudiar las reglas de integridad que los datos almacenados en dicha estructura deben cumplir para garantizar que son correctos. Al definir cada atributo sobre un dominio se impone una restricción sobre el conjunto de valores permitidos para cada atributo.
A este tipo de restricciones se les denomina restricciones de dominios. Hay además dos reglas de integridad muy importantes que se deben cumplir en todas las bases de datos relacionales y en todos sus estados o instancias (las reglas se deben cumplir todo el tiempo). Estas reglas son la regla de integridad de entidades y la regla de integridad referencial. Antes de definirlas, es preciso conocer el concepto de nulo.
Por tanto la diferencia entre ambos conceptos es simple solo con decir que la integridad de entidad se basa en que una tabla que contienen una clave primaria o Primary key lo cual hace dicha columna tenga la característica de ser integra mientras que la integridad referencial protege las relaciones creadas en una tabla cuando eliminamos o alteramos dicha tabla, estas están dadas por la clave foránea..
atte: JUDITH JAZMIN BENITEZ CHARCO
Judith Benitez Charco- Mensajes : 26
Fecha de inscripción : 29/01/2013
Edad : 31
Contenido patrocinado
Página 3 de 8. • 1, 2, 3, 4, 5, 6, 7, 8
Temas similares
» 1.- El SGBD y El Lenguaje De Definición De Datos
» 1.- Plataforma Microsoft .Net
» LENGUAJE DE MANIPULACIÓN DE DATOS
» 5.- Tecnologías De Conectividad De Bases De Datos
» 3.- Administración De Bases De Datos
» 1.- Plataforma Microsoft .Net
» LENGUAJE DE MANIPULACIÓN DE DATOS
» 5.- Tecnologías De Conectividad De Bases De Datos
» 3.- Administración De Bases De Datos
Permisos de este foro:
No puedes responder a temas en este foro.