Unidades Enfoque Orientado a Competencias
¿Quieres reaccionar a este mensaje? Regístrate en el foro con unos pocos clics o inicia sesión para continuar.

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 6 de 8. Precedente  1, 2, 3, 4, 5, 6, 7, 8  Siguiente

Ir abajo

2.- Lenguaje De Manipulación De Datos (Estructura e Integridad De Bases De Datos - Página 6 Empty Re: 2.- Lenguaje De Manipulación De Datos (Estructura e Integridad De Bases De Datos

Mensaje por alma rosa Miér Mar 06, 2013 3:35 pm

IVAN HC escribió: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.
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.
Por ejemplo, en las tablas Sales.SalesOrderDetail y Production.Product de la base de datos AdventureWorks2008R2, la integridad referencial se basa en la relación entre la clave externa (ProductID) de la tabla Sales.SalesOrderDetail y la clave principal (ProductID) de la tabla Production.Product. Esta relación garantiza que un pedido de ventas no pueda nunca hacer referencia a un producto que no existe en la tabla Production.Product.




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
alien Laughing tongue comenten que tengan una bonita tarde

por IVAN HILARIO CRISTOBAL Smile

Me parecio muy buena tu respuesta compañero

alma rosa

Mensajes : 45
Fecha de inscripción : 29/01/2013

Volver arriba Ir abajo

2.- Lenguaje De Manipulación De Datos (Estructura e Integridad De Bases De Datos - Página 6 Empty Re: 2.- Lenguaje De Manipulación De Datos (Estructura e Integridad De Bases De Datos

Mensaje por alma rosa Miér Mar 06, 2013 3:37 pm

conitha escribió:CONCEPTOS BASICOS DE ESTRUCTURA DE BASES DE DATOS
Campos, registros y tablas

Lo primero que hay que tener en cuenta son los campos que se van a utilizar. Los campos son las categorías de información que su base de datos se va a almacenar. Por ejemplo, nuestra escuela ofrece por méritos a los estudiantes que han funcionado bien. Para producir una base de datos de méritos, debe incluir campos como nombre del estudiante, Tutor del Grupo, Asunto, Fecha, Motivo de Mérito, Maestro, etc

Una vez que haya decidido sobre los campos que se van a usar, puede empezar a introducir los datos. Toda la información para una persona o cosa, es decir, la información de todos los campos se reunieron, se llama un registro. En el ejemplo de base de datos de fondo, por lo tanto, cada estudiante que tenía un mérito que tiene un registro en la base de datos.
Todos los registros se reunieron en una mesa (o el archivo, si está utilizando una base de datos de archivo plano-).

Tipos de campo
La mayoría de los programas de base de datos permite, o requiere más bien, que le dan a cada campo en la base de datos de un tipo. El tipo de campo indica qué tipo de información va a ser almacenado en ese campo. Los tipos más comunes del campo son:

números enteros
números decimales
texto
fechas
Boolean (o sí / no)
Algunas bases de datos más avanzados también permiten almacenar objetos multimedia, como imágenes o sonidos.
Campo clave / Key Primaria
Con el fin de producir una estructura lógica para su base de datos, debe haber algo único en cada registro en su base de datos. Para ello suele ser el contenido de un campo en particular, llamado el campo clave. Por ejemplo, si tiene una base de datos auto, entonces usted podría utilizar el número de registro en la clave única, como no hay dos coches deben tener la misma.
INTEGREDIDAD DE BASES 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.
COMANDOS LMD
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.
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. 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.


FUENTES DE INFORMACION
http://www.advanced-ict.info/databases/structure.html
http://labredes.itcolima.edu.mx/fundamentosbd/sd_u3_3.htm
http://e-ducativa.catedu.es/44700165/aula/archivos/repositorio//1000/1083/html/11_comandos_lmd.html
http://.wikispaces.com/2.2+Definicion+Esquema+de+Integridad

ATT. MA. CONCEPCION HERNANDEZ AMADOR

Buena respuesta aqui realizaste otro aporto y son los tipos de campos utilizados en una tabla. Eso es un punto destacable en tu participacion compañera

alma rosa

Mensajes : 45
Fecha de inscripción : 29/01/2013

Volver arriba Ir abajo

2.- Lenguaje De Manipulación De Datos (Estructura e Integridad De Bases De Datos - Página 6 Empty Re: 2.- Lenguaje De Manipulación De Datos (Estructura e Integridad De Bases De Datos

Mensaje por alma rosa Miér Mar 06, 2013 3:38 pm

RAMIRO BALDOVINOS escribió:INTEGRIDAD DE ENTIDAD

La integridad de entidad define una fila como entidad única para una tabla determinada. Laintegridad de entidad exige la integridad de las columnas de los identificadores o la clave principalde una tabla, mediante índices y restricciones UNIQUE, o restricciones PRIMARY KEY


Las columnas pueden aceptar o rechazar valores NULL. NULL es un valor especial en las basesde datos que representa el concepto de un valor desconocido. NULL es diferente de un carácter enblanco ó 0. En realidad, el carácter en blanco es un carácter válido y 0 es un número válido. NULLsimplemente representa la idea de que este valor no se conoce. NULL tampoco es lo mismo queuna cadena de longitud cero. Si la definición de una columna contiene la cláusula NOT NULL, nose pueden insertar filas que tengan el valor NULL en dicha columna. Si la definición de unacolumna sólo tiene la palabra clave NULL, acepta valores NULL.La aceptación de valores NULL en una columna puede aumentar la complejidad de lascomparaciones lógicas que utilicen la columna. El estándar ISO determina que las comparacionescon valores NULL no se evalúan como TRUE o FALSE, sino como UNKNOWN.Esto introduce unalógica de tres valores en los operadores de comparación, que puede ser difícil de controlar correctamente


2.- Lenguaje De Manipulación De Datos (Estructura e Integridad De Bases De Datos - Página 6 Int-ent

integridad referencial

La integridad referencial es una propiedad deseable en las bases de datos. Gracias a la integridad referencial se garantiza que una entidad (fila o registro) siempre se relaciona con otras entidades válidas, es decir, que existen en la base de datos. Implica que en todo momento dichos datos sean correctos, sin repeticiones innecesarias, datos perdidos y relaciones mal resueltas.
Todas las bases de datos relacionales gozan de esta propiedad gracias a que el software gestor de base de datos vela por su cumplimiento. En cambio, las bases de datos jerárquicas requieren que los programadores se aseguren de mantener tal propiedad en sus programas.

Supongamos una base de datos con las entidades Persona y Factura. Toda factura corresponde a una persona y solamente una. Implica que en todo momento dichos datos sean correctos, sin repeticiones innecesarias, datos perdidos y relaciones mal resueltas.

Supongamos que una persona se identifica por su atributo DNI (Documento Nacional de Identidad). También tendrá otros atributos como el nombre y la dirección. La entidad Factura debe tener un atributo DNI_cliente que identifique a quién pertenece la factura.

Por sentido común es evidente que todo valor de DNI_cliente debe corresponder con algún valor existente del atributo DNI de la entidad Persona. Esta es la idea intuitiva de la integridad referencial.

Existen tres tipos de integridad referencial:

Integridad referencial débil: si en una tupla de R todos los valores de los atributos de K tienen un valor que no es el nulo, entonces debe existir una tupla en S que tome esos mismos valores en los atributos de J;
Integridad referencial parcial: si en una tupla de R algún atributo de K toma el valor nulo, entonces debe existir una tupla en S que tome en los atributos de J los mismos valores que los atributos de K con valor no nulo; y
Integridad referencial completa: en una tupla de R todos los atributos de K deben tener el valor nulo o bien todos tienen un valor que no es el nulo y entonces debe existir una tupla en S que tome en los atributos de J los mismos valores que toman los de K.

att: RAMIRO BALDOVINOS GOMEZ

Buena respuesta compañero

alma rosa

Mensajes : 45
Fecha de inscripción : 29/01/2013

Volver arriba Ir abajo

2.- Lenguaje De Manipulación De Datos (Estructura e Integridad De Bases De Datos - Página 6 Empty Re: 2.- Lenguaje De Manipulación De Datos (Estructura e Integridad De Bases De Datos

Mensaje por alma rosa Miér Mar 06, 2013 3:40 pm

karina acuña santana escribió:
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.

USO DE VISTAS:
Una vista en SQL es el resultado de una consulta de varias tablas que te aparece como una sola tabla. Me explico, por ejemplo tú necesitas saber datos de dos tablas pero necesitas que te aparezcan a la vez y siempre que ejecutes una sentencia determinada que viene dada por un nombre que le has dado tú mismo.

Si se suprime una tabla la vista asociada se invalida.

Formato:

CREATE [OR REPLACE] VIEW NOMBREVISTA
[(COLUMNA [,COLUMNA])]
AS CONSULTA;
AS CONSULTA= Determina las columnas y las tablas que aparecerán en la vista.
[OR REPLACE]= Crea de nuevo la vista si ya existía.
Para consultar la vista creada, USER_VIEWS:

SELECT VIEW_NAME FROM…
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".

Los procedimientos almacenados facilitan el desarrollo de nuestras aplicaciones y minimizan el número de modificaciones ante futuros cambios. Así mismo, pueden ser ejecutados como consecuencia de una activación de parte de un triggers. Esto nos permitirá administrar la información de la base de datos, manteniéndola consistente, íntegra y segura.

Procedimientos almacenados :

Los procedimientos almacenados son programas que se referencian en la base de datos. En el caso del CTSQL, estos programas están escritos en Java™. Al ser referenciados en la base de datos, primeramente se deben crear en el catálogo de la base de datos mediante una instrucción delCTSQL, y posteriormente podrán ser ejecutados desde el programa cliente o como consecuencia de los triggers.

Los procedimientos almacenados podrán recibir parámetros de entrada. No podrán interactuar con el usuario a través de una interfaz o pantalla. En cambio, no presentan inconvenientes en escribir en ficheros de textos, XML, etc., o en tablas de la base de datos o en la generación y envío de correos electrónicos, por ejemplo.

Ventajas de los procedimientos almacenados :

• Diseño modular y posibilidad de acceder a bases de datos de otros motores mediante la tecnología JDBC™.
• Las aplicaciones que acceden a la misma base de datos pueden compartir los procedimientos almacenados, eliminando el código doble y reduciendo el tamaño de las aplicaciones.
• Fácil mantenimiento.
• Cuando un procedimiento se actualiza, los cambios se reflejan automáticamente en todas las aplicaciones, sin necesidad de recompilar los programas. 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 rendimiento, especialmente para el acceso del cliente remoto.
• Los procedimientos 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, ya que, incluso, desconocen su existencia. Éste es un elemento de gran valor en lo que a seguridad respecta.
Triggers:

Los triggers permiten “disparar” (ejecutar) procedimientos almacenados cada vez que se realice una acción sobre los datos de una tabla. Esta acción puede consistir en la inserción, modificación o eliminación de un registro. De esta manera, podemos indicar que se ejecuten acciones sobre los datos de la tabla, o de otras tablas, cada vez que se modifican, agregan o eliminan datos de una tabla.

Ventajas de los triggers:

Algunos usos de los triggers son:
• Generación automática de valores derivados de una columna.
• Prevención de transacciones inválidas.
• Proporciona auditorias sofisticadas.
• Mantener la sincronía en tablas replicadas.
• Generación de estadísticas de acceso.
• Publicar información de los eventos generados por la base de datos, las actividades de los usuarios o de las estructuras SQL que se han ejecutado.
• Actualizar totales de la suma de campos de una tabla en otra.
• El mantenimiento de la aplicación se reduce, los cambios a triggers se reflejan automáticamente en todas las aplicaciones que tienen que ver con la tabla sin necesidad de recompilar.

Consideraciones sobre triggers:

• Los triggers no tienen parámetros de entrada. Los únicos valores de entrada con los que pueden trabajar son los del registro que han insertado, modificado o eliminado.
• Los triggers no devuelven valores como los procedimientos almacenados. Sólo pueden modificar otras tablas o los mismos valores del registro agregado o modificado (obviamente, el eliminado no).
• Hay que tener especial cuidado con los triggers recursivos, es decir, aquellos que puedan realizar operaciones que lancen nuevos triggers.

Tipos de triggers:

Dependiendo de la acción sobre la cual queremos que actúen, se pueden crear tres tipos de triggers:
• Al insertar un registro.
• Al modificar un registro.
• Al eliminar un registro.
Cada uno tipo de estos tipos se puede dividir a su vez en dos subtipos: antes y después de la acción.
En consecuencia, podemos disponer de hasta seis tipos distintos de triggers:
• BEFORE INSERT. Antes de insertar un registro.
• AFTER INSERT. Después de insertar un registro.
• BEFORE UPDATE. Antes de modificar un registro.
• AFTER UPDATE. Después de modificar un registro.
• BEFORE DELETE. Antes de eliminar un registro.
• AFTER DELETE. Después de eliminar un registro.


http://www.base100.com/notastec/pdf/b100_nt_proc-alma-triggers_100629_v1.pdf
http://www.desarrolloweb.com/faq/319.php


ATTE: KARINA ACUÑA SANTANA


Buena respuesta compañera coincido contigo

alma rosa

Mensajes : 45
Fecha de inscripción : 29/01/2013

Volver arriba Ir abajo

2.- Lenguaje De Manipulación De Datos (Estructura e Integridad De Bases De Datos - Página 6 Empty Re: 2.- Lenguaje De Manipulación De Datos (Estructura e Integridad De Bases De Datos

Mensaje por alma rosa Miér Mar 06, 2013 3:41 pm

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
(<se
ntencia_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

Buena respuesta compañera...!!! coincido en la sintaxis explicada.

alma rosa

Mensajes : 45
Fecha de inscripción : 29/01/2013

Volver arriba Ir abajo

2.- Lenguaje De Manipulación De Datos (Estructura e Integridad De Bases De Datos - Página 6 Empty Re: 2.- Lenguaje De Manipulación De Datos (Estructura e Integridad De Bases De Datos

Mensaje por alma rosa Miér Mar 06, 2013 3:42 pm

Judith Benitez Charco 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
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.
[list][*]
ESPERO LES SIRVA MI RESPUESTA SALUDOS Razz
ATTE: JUDITH JAZMIN BENITEZ CHARCO


Buena respuesta compañera!!! me parecio correcto el que explicaras la sintaxis utilizada en la creacion de las vistas.

alma rosa

Mensajes : 45
Fecha de inscripción : 29/01/2013

Volver arriba Ir abajo

2.- Lenguaje De Manipulación De Datos (Estructura e Integridad De Bases De Datos - Página 6 Empty Re: 2.- Lenguaje De Manipulación De Datos (Estructura e Integridad De Bases De Datos

Mensaje por alma rosa Miér Mar 06, 2013 3:43 pm

marisol perez 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.

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.

Para crear una 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 bases subyacentes de la vista.
• 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 ] }


Vistas con particiones

Una vista con particiones es una vista definida por un operador UNION ALL de las tablas miembro estructuradas de la misma manera pero almacenadas en diferentes tablas de la misma instancia de SQL Server o en un grupo de instancias autónomas de servidores de SQL Server denominados servidores de bases de datos federadas.


--Partitioned view as defined on Server1
CREATE VIEW Customers
AS
--Select from local member table.
SELECT *
FROM CompanyData.dbo.Customers_33
UNION ALL
--Select from member table on Server2.
SELECT *
FROM Server2.CompanyData.dbo.Customers_66
UNION ALL
--Select from mmeber table on Server3.
SELECT *
FROM Server3.CompanyData.dbo.Customers_99


Normalmente, se dice que una vista tiene particiones si tiene el siguiente formato:

SELECT <select_list1>
FROM T1
UNION ALL
SELECT <select_list2>
FROM T2
UNION ALL
...
SELECT <select_listn>
FROM Tn

Para actualizar una vista con particiones, el usuario debe tener permisos INSERT, UPDATE y DELETE en las tablas miembro.
[center]

marisol perez.[left]


Me parecio muy buena respuesta compañera..!! ya que explicaste las vistas con particiones asi como su sintaxis

alma rosa

Mensajes : 45
Fecha de inscripción : 29/01/2013

Volver arriba Ir abajo

2.- Lenguaje De Manipulación De Datos (Estructura e Integridad De Bases De Datos - Página 6 Empty Re: 2.- Lenguaje De Manipulación De Datos (Estructura e Integridad De Bases De Datos

Mensaje por thanahi Miér Mar 06, 2013 9:12 pm

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.

Una vista es una tabla derivada de otras tablas. 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, es esencialmente una consulta almacenada que devuelve un conjunto de resultados y a la que se le pone un nombre. Una vista es una “tabla virtual”, aparece como una tabla más del esquema, aunque realmente no lo es.

La vista se caracteriza porque:
• Se considera que forma parte del esquema externo
• Una vista es una tabla virtual
• Se puede consultar como cualquier tabla básica
• Las actualizaciones se transfieren a las tablas originales

Por qué creamos las vistas por:
• Seguridad: visualizamos solo una parte de la información que existe
• Comodidad: el modelo relacional no es cómodo para visualizar, tener una vista nos simplifica esta tarea.

Sintaxis en SQL:
CREATE VIEW view_name [(column_list)]
AS sentencia_select

Donde:
• CREATE VIEW es la orden que permite la creación de la vista.
• VIEW_NAME es el nombre de la tabla virtual que se va a crear.
• (column_list) son los nombres de los atributos de la tabla y es opcional.
• Sentencia_select es una consulta SQL cuyo resultado será el contenido de la vista.


Para la modificación de una vista se muestra el siguiente ejemplo:
CREATE VIEW vAlquileres
AS
(
SELECT nombre,
apellidos,
matricula
FROM tAlquileres,
tClientes
WHERE ( tAlquileres.codigo_cliente = tClientes.codigo )
)

Para la eliminación de una vista se utiliza la instrucción:
– DROP VIEW vista [restrict | cascade];

Sintaxis en MySQL:
CREATE [OR REPLACE] [ALGORITHM = {UNDEFINED | MERGE | TEMPTABLE}]
VIEW nombre_vista [(columnas)]
AS sentencia_select
[WITH [CASCADED | LOCAL] CHECK OPTION]

La sintaxis para crear una vista en ORACLE es la siguiente:

CREATE [OR REPLACE] VIEW name [(alias1, alias2, . . . , aliasN)]
AS subquery

El uso de OR REPLACE permite sobrescribir una vista existente. Si se omite, y la vista ya existe, se producirá, un error. El subquery representa un query escrito en SQL, a partir del cual se obtendrá el contenido de la vista. Los aliases opcionales, permiten asignarle nombres a las columnas de la vista. Si se omiten, las columnas tendrán el mismo nombre que en las tablas originales (de donde se obtuvieron).

Fuentes consultadas:
http://dev.mysql.com/doc/refman/5.0/es/create-view.html
http://cnx.org/content/m18786/latest/
http://www.slideshare.net/ZIscko/vistas-en-sql-y-my-sql
http://www.devjoker.com/contenidos/Tutorial-SQL-/13/Vistas.aspx

ATENTAMENTE: THANAHI MEDRANO RUIZ Like a Star @ heaven Like a Star @ heaven

thanahi

Mensajes : 52
Fecha de inscripción : 30/01/2013

Volver arriba Ir abajo

2.- Lenguaje De Manipulación De Datos (Estructura e Integridad De Bases De Datos - Página 6 Empty Replica a una compañera

Mensaje por sinay vargas Sáb Mar 09, 2013 10:05 pm

anyytta 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.

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.

Hola amiga sobre tu información proporcionada en este foro me pareció muy interesante ya que haces mención de los comando de lenguajes de manipulación de datos, ya que nosotros algunos yo los hemos utilizados en semestres pasados y también das la definición de lo que es el esquema de integridad. me pareció muy precisa tu información.

Atentamente: sinai va
rgas garcia


lol!
sinay vargas
sinay vargas

Mensajes : 68
Fecha de inscripción : 29/01/2013

Volver arriba Ir abajo

2.- Lenguaje De Manipulación De Datos (Estructura e Integridad De Bases De Datos - Página 6 Empty Replica a una compañera

Mensaje por sinay vargas Sáb Mar 09, 2013 10:13 pm

thanahi escribió: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

ATENTAMENTE:THANAHI MEDRANO RUIZ
flower


Hola amiga sobre tu información proporcionada en este sitio me pareció muy bien y al igual que yo utilice algunas fuentes de información en la cual también encontré algunos aspectos sobre este tema que son las vistas es una consulta de ciertas tablas. y sobre la elaboración de un trigger opino igual que tu que es un procedimiento. me gusto tu información sigue así.

Atentamente: sinaí vargas Garcia

lol!
sinay vargas
sinay vargas

Mensajes : 68
Fecha de inscripción : 29/01/2013

Volver arriba Ir abajo

2.- Lenguaje De Manipulación De Datos (Estructura e Integridad De Bases De Datos - Página 6 Empty Replica a un compañero

Mensaje por sinay vargas Sáb Mar 09, 2013 10:25 pm

tomas lopez perez escribió:aver compañeros aqui les comparto un script todo mafioso jajaja naaaaa, es decir que esta algo largo pues.

USE NORTHWIND --aqui usamos la base de datos llamada northwind, es decir que creamos primero la base con dicho nombre
GO

--CREACION DE VISTA PROVEEDORES Y SUS PEDIDOS

CREATE VIEW VIEW_SUPPLIER_PRODUCS
AS
SELECT S.SUPPLIERID,S.COMPANYNAME,S.CONTACTNAME
,P.PRODUCTID,P.PRODUCTNAME, P.UNITPRICE
FROM SUPPLIERS AS S INNER JOIN PRODUCTS AS P
ON
S.SUPPLIERID=P.SUPPLIERID
GO


--CREACION DE UNA VISTA CON INSTRUCCION GROUP

CREATE VIEW VIEW_SUBTOTALES(CODIGO_ORDEN,SUB_TOTAL)
AS
SELECT OD.ORDERID,SUM(CONVERT(MONEY,(OD.UNITPRICE* QUANTITY*(1-DISCOUNT)/100))*100)
FROM [ORDER DETAILS] OD
GROUP BY OD.ORDERID
GO
--LLAMAR A LA CONSULTA ANTERIOR

SELECT * FROM VIEW_SUBTOTALES

--VER VISTAS

SELECT * FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_TYPE='VIEW'

/*
SOLO LOS DEL ROL DEL SISTEMA SYSADMIN, O DE EL ROL DE BASE DE DATOS DB_OWNER,
DB_DLADMIN HACEN CONSULTAS
O BIEN AL TENER PERMINOS CREATE VIEW Y PERMISOS DE SELECT EN LAS TABLAS A UTILIZAR
-NO SE PUEDE USAR COMPUTE Ó COMPUTE BY
-NO SE PUEDE USAR ORDER BY SO SI SE USA TOP
-NO SE PUEDE HACER REFERENCIA A TABLAS TEMPORALES
-NO SE PUEDE HACER REFERENCIA A MAS DE 1024 COLUMNAS
-NO SE PUEDE COMBINAR CREATE VIEW EN OTRO LOTE
*/

--BORRAR UNA VISTA

DROP VIEW VIEW_SUBTOTALES
--ALTERAR UNA VISTA
ALTER VIEW VIEW_SUPPLIER_PRODUCS
AS
SELECT S.SUPPLIERID,S.COMPANYNAME,S.CONTACTNAME
,P.PRODUCTID,P.PRODUCTNAME, P.UNITPR ICE
FROM SUPPLIERS AS S INNER JOIN PRODUCTS AS P
ON
S.SUPPLIERID=P.SUPPLIERID
GO

--ESCONDER EL CODIGO DE LA VISTA NO ELIMINE LAS ENTRADAS DE syscomments
ALTER VIEW VIEW_SUPPLIER_PRODUCS
WITH ENCRYPTION
AS
SELECT S.SUPPLIERID,S.COMPANYNAME,S.CONTACTNAME
,P.PRODUCTID,P.PRODUCTNAME, P.UNITPR ICE
FROM SUPPLIERS AS S INNER JOIN PRODUCTS AS P
ON
S.SUPPLIERID=P.SUPPLIERID
GO

--CONSULTAR INFORMACION INFORMACION DE LA VISTA ATRAVEZ DE INFORMATION_SCHEMA
--SI ESTA PUESTO WITH ENRCRYPTION ESTA INFORMACION NO ESTA VISIBLE


SELECT * FROM INFORMATION_SCHEMA.TABLES --o sysobjects --Nombres de vistas y tablas
SELECT * FROM INFORMATION_SCHEMA.VIEW_TABLE_USAGE --o select * from sysdepends
--Nombres de las tablas o vistas base.
SELECT * FROM INFORMATION_SCHEMA.VIEWS -- o select * from syscomments --Definición de como se hicieron las vistas.
SELECT * FROM INFORMATION_SCHEMA.VIEW_COLUMN_USAGE -- o syscolumns
--tablas y vistas base y Columnas definidas en una vista.


--PARA VER EL SCRIPT DE UNA CONSULTA O INFORMATION_SCHEMA.VIEWS O SP_HELPTEXT
SP_HELPTEXT [ORDERS QRY]
SP_DEPENDS [ORDERS QRY] --NOMBRES DE TABLA Y SUS DEPENDENCIAS

--PUEDE HACER INSERCIONES EN UNA CONSULTA PERO CONSIDERE QUE
--WITH CHECK OPTION OBLIGA A QUE LAS INSTRUCCIONES DE MODIFICACION SE COMPRUEBEN CONTRA EL WHERE

--CREAR UNA VISTA CON WITH CHECK OPTION PARA COMPROBAR EL EJERCICIO

CREATE VIEW CLIENTESARGENTINA
AS
SELECT * FROM CUSTOMERS WHERE COUNTRY='ARGENTINA'
WITH CHECK OPTION

--ESTA INSERCION DEBE PRODUCIR SOBRE LA CONSULTA ANTERIOR DEBE PRODUCIR UN ERROR.

INSERT CLIENTESARGENTINA (CUSTOMERID,COMPANYNAME,CONTACTNAME,CONTACTTITLE,CITY,COUNTRY)
VALUES
('VHCVV','UNIVERSIDAD GALILEO','VICTOR HUGO CARDENAS','SALES AGENT','GUATEMALA','GUATEMALA')

--CREACION DE UNA TABLA PARA COMPROBAR LA INSERCCION A MULTIPLES TABLAS
CREATE VIEW PROVEEDORES_PRODUCTOS
AS
SELECT S.SUPPLIERID,S.COMPANYNAME,S.CONTACTNAME,S.COUNTRY,P.PRODUCTID,P.PRODUCTNAME,P.UNITPRICE FROM SUPPLIERS AS S
INNER JOIN PRODUCTS AS P ON S.SUPPLIERID=P.SUPPLIERID

--ESTA INSERCION DEBE DE DAR ERROR PORQUE AFECTA A VARIAS TABLAS

INSERT PROVEEDORES_PRODUCTOS(COMPANYNAME,CONTACTNAME,COUNTRY,PRODUCTNAME,UNITPRICE)
VALUES('CARDENAS','VICTOR HUGO','GUATEMALA','LECHE EN POLVO',788.00)

--ESTA INSERCION A LA MISMA CONSULTA, SOLO QUE AHORA AFECTA SOLO
UNA TABLA, EL RESULTADO ES EXITOSO


INSERT PROVEEDORES_PRODUCTOS(COMPANYNAME,CONTACTNAME,COUNTRY)
VALUES('CARDENAS','VICTOR HUGO','GUATEMALA')

--COLOCAR UN INDICE EN LA CONSULTA PUEDE OPTIMIZAR SU
RENDIMIENTO, DEBE HACER REFERENCIA AL NOMBRE DE 2 PARTES DEL OBJETO
--DEBE AGREGAR LA OPCION WITH SCHEMABINDIGN

DROP view PROVEEDORES_PRODUCTOS

CREATE VIEW DBO.PROVEEDORES_PRODUCTOS
WITH SCHEMABINDING
AS
SELECT S.SUPPLIERID,S.COMPANYNAME,S.CONTACTNAME,S.COUNTRY,P.PRODUCTID,P.PRODUCTNAME,P.UNITPRICE FROM DBO.SUPPLIERS AS S
INNER JOIN DBO.PRODUCTS AS P ON S.SUPPLIERID=P.SUPPLIERID

--CREACION DEL INDICE, EL PRIMER INDICE DEBE SER UN INDICE UNICO AGRUPADO

CREATE UNIQUE CLUSTERED INDEX CL_SUPPLIERID
ON DBO.PROVEEDORES_PRODUCTOS (SUPPLIERID,PRODUCTID)

--CREACION DE OTROS INDICES NO AGRUPADOS

CREATE NONCLUSTERED INDEX VIEW_PRODUCTNAME
ON PROVEEDORES_PRODUCTOS(PRODUCTNAME)


--PARA REVISAR SI ES INDEXABLE UNA CONSULTA

SELECT OBJECTPROPERTY (object_id('DBO.PROVEEDORES_PRODUCTOS'),'IsIndexable')


--VISTAS DIVIDIDAS
-- ALL Incorpora todas las filas en los resultados, incluidas las duplicadas.
--Si no se especifica lo contrario, se quitan las filas duplicadas.


SELECT COMPANYNAME, CONTACTNAME, 'CLIENTE' AS ESTADO FROM CUSTOMERS
UNION ALL
SELECT COMPANYNAME, CONTACTNAME, 'PROVEEDOR' AS ESTADO FROM SUPPLIERS


/*
WITH CHECK OPTION

Exige que todas las instrucciones de modificación de datos ejecutadas contra la vista se adhieran a los criterios establecidos en select_statement. Cuando una fila se modifica mediante una vista, WITH CHECK OPTION garantiza que los datos permanecerán visibles en toda la vista después de confirmar la modificación.

WITH ENCRYPTION

Indica que SQL Server cifra las columnas de la tabla del sistema
que contienen el texto de la instrucción CREATE VIEW. Utilizar
WITH ENCRYPTION evita que la vista se publique como parte de la
duplicación de SQL Server.

SCHEMABINDING

Enlaza la vista al esquema. Cuando se especifica SCHEMABINDING,
select_statement debe incluir los nombres con dos partes
(propietario.objeto) de las tablas, vistas o funciones definidas
por el usuario a las que se hace referencia.

Las vistas o las tablas que participan en una vista creada con
la cláusula de enlace de esquema no se pueden quitar ni alterar,
de forma que deja de tener un enlace de esquema. De lo contrario,
SQL Server genera un error. 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.

VIEW_METADATA

Especifica que SQL Server devolverá a las API de DBLIB, ODBC y
OLE DB la información de metadatos sobre la vista, en vez de
las tablas o tabla 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 devueltos por SQL Server a las API DB-LIB, ODBC y
OLE DB del cliente, que permiten a las API del cliente
implementar cursores actualizables en el cliente. 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 la opción VIEW_METADATA, los
metadatos del modo de exploración devuelven el nombre de
vista en vez de los nombres de la tabla base cuando se
describen las columnas de la vista en el conjunto de resultados.

Cuando se crea una vista WITH VIEW_METADATA, todas sus
columnas (excepto timestamp) son actualizables si la
vista tiene los desencadenadores INSERT o UPDATE INSTEAD
OF. Consulte Vistas actualizables, más adelante en este capítulo.
*/

fuente consultada

http://vhcardenas.blogspot.mx/2011/07/script-creacion-de-vistas-en-sql-server.html


Hola amigo sobre tu información que aportaste es todo mafioso jajaja ntc me pareció bien un que largo pero dice lo mismo que yo publique en mi investigación. pero hay una diferencia la cual es que tu mencionas algunos aspectos que yo no mencione y me parecio muy interesante tu investigación amigo. sigue así amigo.

Atentamente: sinaí vargas García

lol!
sinay vargas
sinay vargas

Mensajes : 68
Fecha de inscripción : 29/01/2013

Volver arriba Ir abajo

2.- Lenguaje De Manipulación De Datos (Estructura e Integridad De Bases De Datos - Página 6 Empty Replica a una compañera

Mensaje por sinay vargas Sáb Mar 09, 2013 10:33 pm

thanahi 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 en una base de datos se refiere a la corrección y exactitud de la información contenida. Una base de datos determinada podría estar sujeta a cualquier cantidad de restricciones de integridad (en general) de una complejidad arbitraria.
La 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. Su objetivo es conservar y garantizar automáticamente la integridad de todos los datos almacenados en un SGBD. Se define como el conjunto de mecanismos para conservar y garantizar de forma automática la integridad de todos los datos de los sistemas de gestión de bases de datos. Define las reglas que claves primarias y claves foráneas deben cumplir.
La Integridad referencial también vigila que se cumplan las siguientes reglas:

• No se podrá introducir un valor en la tabla relacionada si antes no ha sido introducida en la tabla principal.
• No se puede eliminar un registro de una tabla principal si existen registros coincidentes en la tabla relacionada.
• No se puede cambiar un valor de la clave primaria en la tabla principal si el registro tiene registros relacionados.

La 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.

ATENTAMENTE: THANAHI MEDRANO RUIZ Like a Star @ heaven


Hola amiga Laughing sobre tu información que vas proporcionado en este foro me gusto, por que para entender la diferencia de cada concepto que nos pide este inciso, primero hay que saber que es la integridad y de hay partir ahora si a las diferencias de lo que es la integridad de entidad y la integridad de referencial ya que cada una de ellas juega un papel diferente.

Atentamente:Sinaí Vargas García

lol!
sinay vargas
sinay vargas

Mensajes : 68
Fecha de inscripción : 29/01/2013

Volver arriba Ir abajo

2.- Lenguaje De Manipulación De Datos (Estructura e Integridad De Bases De Datos - Página 6 Empty Replica a un compañero

Mensaje por sinay vargas Sáb Mar 09, 2013 10:37 pm

ISAI RENDON QUITERIO1 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.

Bueno compañeros a continuación les explicare la diferencia que existe entre la integridad de entidad e integridad referencial, pero primero les explicare que la exigencia de integridad de los datos garantiza la calidad de los datos de la base de datos.

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 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.

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.

Eso es todo compañero referente a la diferencia que existe entre la integridad de entidad e integridad referencial, alguna duda compañeros???


Hola Isa sobre tu información proporcionada en este foro me gusto ya que destacas las principales diferencias que hay entre cada integridad de entidad con la integridad referencial.

Very Happy

Atentamente: sinaí vargas García
sinay vargas
sinay vargas

Mensajes : 68
Fecha de inscripción : 29/01/2013

Volver arriba Ir abajo

2.- Lenguaje De Manipulación De Datos (Estructura e Integridad De Bases De Datos - Página 6 Empty Replica a una compañera

Mensaje por sinay vargas Sáb Mar 09, 2013 10:42 pm

alma rosa escribió:
Investigar acerca de la diferencia que existe entre la integridad de entidad e integridad referencial. Y comparta en este foro, comentarios contundentes al respecto.

primeramente se dice que la INTEGRIDAD DE ENTIDAD
Define una fila como entidad única para una tabla determinada.
Ademas de que 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.

Mientras que la INTEGRIDAD REFERENCIAL
Garantiza que una entidad (fila o registro) siempre se relaciona con otras entidades válidas, es decir, que existen en la base de datos. Implica que en todo momento dichos datos sean correctos, sin repeticiones innecesarias, datos perdidos y relaciones mal resueltas.

Tambien protege las relaciones definidas entre las tablas cuando se crean o se eliminan filas.
Es necesario mencionar que esta se basa en las relaciones entre claves externas y claves principales o entre claves externas y claves exclusivas, mediante restricciones FOREIGN KEY y CHECK, a diferencia de la integridad de entidad.
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.

y en general compañeros pude encontrar esas diferencias.


Alma rosa peñaloza fierros

Hola Alma sobre tu información proporcionada en este foro me gusto por que es breve y concisa. Lo cual se distingue claramente la diferencia entre ambas. Me gusto mucho. sigue así.

Atentamente: sinaí vargas García

lol!
sinay vargas
sinay vargas

Mensajes : 68
Fecha de inscripción : 29/01/2013

Volver arriba Ir abajo

2.- Lenguaje De Manipulación De Datos (Estructura e Integridad De Bases De Datos - Página 6 Empty Respuesta al reactivo num. 2

Mensaje por Elman F. Dom Mar 10, 2013 8:25 pm

RESPUESTA AL REACTIVO NUMERO 2 ATT: ELMAN FLORES ALCANTAR
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. Microsoft SQL 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.

Un Procedimiento Almacenado es un programa auto controlado 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.

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).

Las ventajas de usar los 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.

ATT: ELMAN FLORES ALCANTAR bounce

Elman F.
Invitado


Volver arriba Ir abajo

2.- Lenguaje De Manipulación De Datos (Estructura e Integridad De Bases De Datos - Página 6 Empty respuesta al reactivo 2

Mensaje por marisol perez Dom Mar 10, 2013 11:55 pm

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.


RESUMEN

Las vistas sólo pueden ser creadas 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. Microsoft SQL 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.


Un Procedimiento Almacenado es un programa auto controlado 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.

• 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).

El procedimiento almacenado permite pasar parámetros, cosa que las vistas no. Además de los parámetros, piensa que puedes realizar varios pasos, tratar los datos, hacer distintos select, delete, usar tablas temporales de trabjo, etc.
Éstos a su vez 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).
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.

Ejemplo:
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 autocreables que es una forma de generar ciclos redundantes a través de los procedimientos almacenados.

El uso de los triggers tiene sus ventajas:

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.


atte:marisol

marisol perez

Mensajes : 23
Fecha de inscripción : 29/01/2013

Volver arriba Ir abajo

2.- Lenguaje De Manipulación De Datos (Estructura e Integridad De Bases De Datos - Página 6 Empty Re: 2.- Lenguaje De Manipulación De Datos (Estructura e Integridad De Bases De Datos

Mensaje por marisol perez Lun Mar 11, 2013 12:07 am

kike leon 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 referencial es una propiedad deseable en las bases de datos. Gracias a la integridad referencial se garantiza que una entidad (fila o registro) siempre se relaciona con otras entidades válidas, es decir, que existen en la base de datos. Implica que en todo momento dichos datos sean correctos, sin repeticiones innecesarias, datos perdidos y relaciones mal resueltas.
Existen tres tipos de integridad referencial:
1. Integridad referencial débil: si en una tupla de R todos los valores de los atributos de K tienen un valor que no es el nulo, entonces debe existir una tupla en S que tome esos mismos valores en los atributos de J;
2. Integridad referencial parcial: si en una tupla de R algún atributo de K toma el valor nulo, entonces debe existir una tupla en S que tome en los atributos de J los mismos valores que los atributos de K con valor no nulo; y
3. Integridad referencial completa: en una tupla de R todos los atributos de K deben tener el valor nulo o bien todos tienen un valor que no es el nulo y entonces debe existir una tupla en S que tome en los atributos de J los mismos valores que toman los de K.

La integriad de entidad pretende que cada entidad que se guarda en la base de datos sea identificable en 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.

atte: luis enrique leon salgado Smile

Me parece muy buena tu respuesta Enrique ya que fuiste breve dejándonos claro que es una integridad referencial y también que es la integridad de entidad, ya con este dato, nos damos cuenta de la diferencia que existe entre una y otra.

marisol...

marisol perez

Mensajes : 23
Fecha de inscripción : 29/01/2013

Volver arriba Ir abajo

2.- Lenguaje De Manipulación De Datos (Estructura e Integridad De Bases De Datos - Página 6 Empty Re: 2.- Lenguaje De Manipulación De Datos (Estructura e Integridad De Bases De Datos

Mensaje por ixhel Mar Mar 12, 2013 9:24 pm

marisol perez escribió:
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.


RESUMEN

Las vistas sólo pueden ser creadas 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. Microsoft SQL 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.


Un Procedimiento Almacenado es un programa auto controlado 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.

• 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).

El procedimiento almacenado permite pasar parámetros, cosa que las vistas no. Además de los parámetros, piensa que puedes realizar varios pasos, tratar los datos, hacer distintos select, delete, usar tablas temporales de trabjo, etc.
Éstos a su vez 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).
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.

Ejemplo:
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 autocreables que es una forma de generar ciclos redundantes a través de los procedimientos almacenados.

El uso de los triggers tiene sus ventajas:

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.


atte:marisol



replica:
estoy de acuerdo contigo compañera muy buena respuesta =)

att:ixhel luviano

ixhel

Mensajes : 29
Fecha de inscripción : 29/01/2013

Volver arriba Ir abajo

2.- Lenguaje De Manipulación De Datos (Estructura e Integridad De Bases De Datos - Página 6 Empty Re: 2.- Lenguaje De Manipulación De Datos (Estructura e Integridad De Bases De Datos

Mensaje por ixhel Mar Mar 12, 2013 9:29 pm

Judith Benitez Charco 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.
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

replica:
hola compañera estoy de acuerdo con su información muy precisa... =)
atte:ixhel luviano

ixhel

Mensajes : 29
Fecha de inscripción : 29/01/2013

Volver arriba Ir abajo

2.- Lenguaje De Manipulación De Datos (Estructura e Integridad De Bases De Datos - Página 6 Empty Replica del reactivo #1

Mensaje por thanahi Mar Mar 12, 2013 9:46 pm

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 GARCIA
IA Laughing

Hola amiga me pareció que tu información es excelente y precisa ya que tomaste en cuenta lo mas relevante de cada punto expuesto en este reactivo estoy de acuerdo contigo en cada concepto que explicaste de forma clara y breve. cheers
atte: Thanahi Medrano Ruiz Like a Star @ heaven

thanahi

Mensajes : 52
Fecha de inscripción : 30/01/2013

Volver arriba Ir abajo

2.- Lenguaje De Manipulación De Datos (Estructura e Integridad De Bases De Datos - Página 6 Empty Replica del reactivo #3 a Cinthia

Mensaje por thanahi Mar Mar 12, 2013 9:52 pm

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 compañera me pareció una de las respuestas mas precisas ya que explicaste de forma clara las diferencias que existe entre las dos integridades.

Atte: Thanahi Medrano Ruiz Like a Star @ heaven

thanahi

Mensajes : 52
Fecha de inscripción : 30/01/2013

Volver arriba Ir abajo

2.- Lenguaje De Manipulación De Datos (Estructura e Integridad De Bases De Datos - Página 6 Empty Replica del reactivo #2 a Ixhel

Mensaje por thanahi Mar Mar 12, 2013 9:59 pm

ixhel escribió: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.

vistas:
Una vista es una tabla derivada de otras tablas (básicas o virtuales).
uso:Para la especificación de tablas con información que se accede con frecuencia pero no posee existencia física:
•Información derivada de la relación entre varias tablas.
•En general: información derivada de consultas complejas a la que se accede con frecuencia.
•Como mecanismo de seguridad: creación de vistas con, únicamente, los atributos de las tablas a los cuales se desea permitir acceder a determinados usuarios.
•Para la creación de esquemas externos.

procedimiento almacenado:

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.

disparadores (Trigger’s).
Un trigger es un bloque de código PL/SQL que se almacenan en la base de datos. Los bloques de código de los triggers están asociados a una tabla y se ejecutan automáticamente cuando se producen ciertos eventos asociados a la tabla.

sintaxis:
create or replace trigger nombre_trigger
{before | after} {delete | insert | update[of lista_columnas]}
[or {before | after} {delete|insert|update [of lista_columnas]}]
on nombre_tabla
[for each {row | statement | when (condición)}]
/* comienza el trigger */
[declare]
<declaraciones>
begin
<instrucciones>
[exception]
<excepciones>
end;

Orden de ejecución de los trigger
Una misma tabla puede tener varios triggers y el orden de disparo seria el siguiente:
Antes de comenzar a ejecutar la orden que provoca el disparo se ejecutaran los triggers del tipo before.... for each statement
Para cada fila afectada por la orden:
a) se ejecutan los triggers del tipo before … for each row
b) se ejecuta la actualización de la fila
c) se ejecutan los triggers after... for each row
Una vez realizada la operación se ejecuta el after … for each statement
importancia:
bueno estos son importantes ya que se puede utilizar para prevenir transacciones erróneas y nos sirven también para implementar restricciones de integridad o seguridad.

att:ixhel luviano mojica

Hola compañera me pareció una excelente y precisa información sobre la importancia que tienen las vistas en las bases de datos. Para mi fue muy clara tu explicación de este reactivo por que explicas claramente cada concepto y su importancia de cada uno de ellos ya que nos permite saber cual es su importancia en las bases de datos.

Att: Thanahi Medrano Ruiz Surprised

thanahi

Mensajes : 52
Fecha de inscripción : 30/01/2013

Volver arriba Ir abajo

2.- Lenguaje De Manipulación De Datos (Estructura e Integridad De Bases De Datos - Página 6 Empty Replica del reactivo #1

Mensaje por thanahi Mar Mar 12, 2013 10:10 pm

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. study

PABLO DELGADO

Hola compañero excelente aporte al foro tu información es muy precisa.
Att: Thanahi Medrano Ruiz

thanahi

Mensajes : 52
Fecha de inscripción : 30/01/2013

Volver arriba Ir abajo

2.- Lenguaje De Manipulación De Datos (Estructura e Integridad De Bases De Datos - Página 6 Empty replica.

Mensaje por NetitoO Mar Mar 12, 2013 10:47 pm

conitha escribió:CONCEPTOS BASICOS DE ESTRUCTURA DE BASES DE DATOS
Campos, registros y tablas

Lo primero que hay que tener en cuenta son los campos que se van a utilizar. Los campos son las categorías de información que su base de datos se va a almacenar. Por ejemplo, nuestra escuela ofrece por méritos a los estudiantes que han funcionado bien. Para producir una base de datos de méritos, debe incluir campos como nombre del estudiante, Tutor del Grupo, Asunto, Fecha, Motivo de Mérito, Maestro, etc

Una vez que haya decidido sobre los campos que se van a usar, puede empezar a introducir los datos. Toda la información para una persona o cosa, es decir, la información de todos los campos se reunieron, se llama un registro. En el ejemplo de base de datos de fondo, por lo tanto, cada estudiante que tenía un mérito que tiene un registro en la base de datos.
Todos los registros se reunieron en una mesa (o el archivo, si está utilizando una base de datos de archivo plano-).

Tipos de campo
La mayoría de los programas de base de datos permite, o requiere más bien, que le dan a cada campo en la base de datos de un tipo. El tipo de campo indica qué tipo de información va a ser almacenado en ese campo. Los tipos más comunes del campo son:

números enteros
números decimales
texto
fechas
Boolean (o sí / no)
Algunas bases de datos más avanzados también permiten almacenar objetos multimedia, como imágenes o sonidos.
Campo clave / Key Primaria
Con el fin de producir una estructura lógica para su base de datos, debe haber algo único en cada registro en su base de datos. Para ello suele ser el contenido de un campo en particular, llamado el campo clave. Por ejemplo, si tiene una base de datos auto, entonces usted podría utilizar el número de registro en la clave única, como no hay dos coches deben tener la misma.
INTEGREDIDAD DE BASES 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.
COMANDOS LMD
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.
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. 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.


FUENTES DE INFORMACION
http://www.advanced-ict.info/databases/structure.html
http://labredes.itcolima.edu.mx/fundamentosbd/sd_u3_3.htm
http://e-ducativa.catedu.es/44700165/aula/archivos/repositorio//1000/1083/html/11_comandos_lmd.html
http://.wikispaces.com/2.2+Definicion+Esquema+de+Integridad

ATT. MA. CONCEPCION HERNANDEZ AMADOR

concepcioooon!!! Very Happy buena informacion compañera, muy buena aportacion, tu muy bien!!

NetitoO

Mensajes : 6
Fecha de inscripción : 15/02/2013

Volver arriba Ir abajo

2.- Lenguaje De Manipulación De Datos (Estructura e Integridad De Bases De Datos - Página 6 Empty replica al compañero

Mensaje por NetitoO Mar Mar 12, 2013 10:50 pm

Elman F. escribió:RESPUESTA AL REACTIVO NUMERO 2 ATT: ELMAN FLORES ALCANTAR
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. Microsoft SQL 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.

Un Procedimiento Almacenado es un programa auto controlado 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.

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).

Las ventajas de usar los 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.

ATT: ELMAN FLORES ALCANTAR bounce

bien elman, me gusto tu informacion compañero, te centraste bien el tema y asi pudiste hacer una buena aportacion sombre el mismo!! Laughing

NetitoO

Mensajes : 6
Fecha de inscripción : 15/02/2013

Volver arriba Ir abajo

2.- Lenguaje De Manipulación De Datos (Estructura e Integridad De Bases De Datos - Página 6 Empty Re: 2.- Lenguaje De Manipulación De Datos (Estructura e Integridad De Bases De Datos

Mensaje por Contenido patrocinado


Contenido patrocinado


Volver arriba Ir abajo

Página 6 de 8. Precedente  1, 2, 3, 4, 5, 6, 7, 8  Siguiente

Volver arriba

- Temas similares

 
Permisos de este foro:
No puedes responder a temas en este foro.