Sunteți pe pagina 1din 9

RESOLUCION DE LA GUIA 4

Investigue como ordenar una columna ascendente y descendente con una consulta select

Investigue el uso del comodín LIKE en las consultas SELECT.

Realice un INSERT dejando vacía una columna No Null, y verifique que pasa.

Elimine el primer registro de la tabla país y verifique el resultado.

Realice pruebas con la base de datos NORTWIND

RESOLUCION DE LA GUIA 6

Ejercicio de subconsulta con operadores

Una subconsulta es una consulta anidada en una instrucción SELECT, INSERT, UPDATE o DELETE,
o bien en otra subconsulta. Las subconsultas se pueden utilizar en cualquier parte en la que se
permita una expresión. Se llama también subconsulta a una consulta o selección interna,
mientras que la instrucción que contiene una subconsulta también es conocida como consulta
o selección externa.

Una consulta SELECT normal, que incluye los componentes normales de la lista de selección.

 Una cláusula normal FROM que incluye uno o varios nombres de tablas o vistas.

 Una cláusula opcional WHERE.

 Una cláusula opcional GROUP BY.

 Una cláusula opcional HAVING.

Sub-Consultas usadas en lugar de una expresión.


En Transact-SQL, una subconsulta se puede usar allí donde se pueda usar una expresión en las
instrucciones SELECT, UPDATE, INSERT y DELETE, excepto en una lista ORDER BY. En el ejemplo
siguiente se muestra cómo se puede usar esta mejora. Esta consulta busca los precios de todas
las bicicletas de montaña, el precio medio y la diferencia entre el precio de cada bicicleta y el
precio medio.
SUBCONSULTAS CON INSERT, UPDATE Y DELETE
También puede realizarse subconsultas combinando estas expresiones. SUBCONSULTAS CON
EXISTS Cuando una subconsulta se especifica con la palabra clave EXISTS, funciona como una
prueba de existencia. La cláusula WHERE de la consulta externa comprueba si existen las filas
devueltas por la subconsulta. En realidad, la subconsulta no produce ningún dato, devuelve el
valor TRUE o FALSE.
Ejemplos:

VISTAS
Una vista es una alternativa para mostrar datos de varias tablas. Una vista es como una tabla
virtual que almacena una consulta. Los datos accesibles a través de la vista no están
almacenados en la base de datos como un objeto.
Las vistas permiten:
 Ocultar información: permitiendo el acceso a algunos datos y manteniendo oculto el resto
de la información que no se incluye en la vista. El usuario opera con los datos de una vista
como si se tratara de una tabla, pudiendo modificar tales datos.
 Mejorar el rendimiento: se puede evitar tipear instrucciones repetidamente almacenando en
una vista el resultado de una consulta compleja que incluya información de varias tablas.
Existen algunas restricciones para el uso de "create view", a saber:
 no puede incluir las cláusulas "compute" ni "compute by" ni la palabra clave "into"
 no se pueden crear vistas temporales ni crear vistas sobre tablas temporales.
 no se pueden asociar reglas ni valores por defecto a las vistas.
 no puede combinarse con otras instrucciones en un mismo lote.
 Se pueden construir vistas sobre otras vistas.

RESOLUCION DE EJERCIO DE LA GUIA 7


INVESTIGACION

SQL sentencia CREATE VIEW


En SQL, una visión se basa en el conjunto de resultados de la tabla de
visualización de las sentencias SQL.
Ver contiene filas y columnas, al igual que una mesa real. El campo es la
vista de una o más bases de datos en los campos reales en la tabla.
Se puede añadir a las funciones SQL juicio, cuando y unirse a los estados
que estén presentes los datos como si los datos son de una sola tabla de la
misma.
SQL CREATE VIEW Sintaxis
CREATE VIEW view_name AS
SELECT column_name(s)
FROM table_name
WHERE condition

CREATE VIEW [Current Product List] AS


SELECT ProductID,ProductName
FROM Products

Otra vista de la base de datos Neptuno seleccionará "Productos" de mesa,


todos mayores que el precio unitario precio medio unitario de los productos:

vista SQL de actualización


Puede utilizar la siguiente sintaxis para actualizar la vista:
SQL CREAR O CAMBIAR VISTA Sintaxis
CREATE OR REPLACE VIEW view_name AS
SELECT column_name(s)
FROM table_name
WHERE condition
Cuál es el uso de la opción WITH CHECK OPTION en una vista.
Puede insertar en una vista una fila que no satisfaga las condiciones de la vista; es decir, una fila
que no resulte visible a través de la vista. También puede actualizar una fila de una vista que ya
no satisfaga las condiciones de la vista.
Para evitar la actualización de una fila de una vista de modo que deje de satisfacer las
condiciones de la vista, añada las palabras clave WITH CHECK OPTION cuando cree la vista. Esta
cláusula solicita al servidor de bases de datos que pruebe cada fila insertada o actualizada para
asegurarse de que cumple las condiciones establecidas por la cláusula WHERE de la vista. El
servidor de bases de datos rechaza la operación con un error si no se cumplen las condiciones.

No puede incluir las palabras clave WITH CHECK OPTION cuando se incluye un operador
UNION en la definición de la vista.

Ejemplo
Investigar que es un diagrama ER.

Un diagrama entidad-relación, también conocido como modelo entidad relación o ERD, es un


tipo de diagrama de flujo que ilustra cómo las "entidades", como personas, objetos o
conceptos, se relacionan entre sí dentro de un sistema. Los diagramas ER se usan a menudo
para diseñar o depurar bases de datos relacionales en los campos de ingeniería de software,
sistemas de información empresarial, educación e investigación. También conocidos como los
ERD o modelos ER, emplean un conjunto definido de símbolos, tales como rectángulos,
diamantes, óvalos y líneas de conexión para representar la interconexión de entidades,
relaciones y sus atributos. Son un reflejo de la estructura gramatical y emplean entidades
como sustantivos y relaciones como verbos.
Modelo de una ER:Entidad Relación

Investigar los distintos programas de modelado de base de datos que existen y sus ventajas.
MySQL.“

MICROSOFT SQL SERVER

ORACLE.

MICROSOFT VISUAL STUDIO. .

ZEND STUDIO.

MICROSOFT OFFICE ACCESS.

INKSCAPE.

Ventajas: Ventajas del uso de la base de datos en la organización: 1. Independencia de datos y


tratamiento. Cambio en datos no implica cambio en programas y viceversa (Menor coste de
mantenimiento). 2. Coherencia de resultados.
 Reduce redundancia :
 Acciones lógicamente únicas. BASES DE DATOS MIS 308 5
 Se evita inconsistencia. 3. Mejora en la disponibilidad de datos
 No hay dueño de datos (No igual a ser públicos).
 Ni aplicaciones ni usuarios.
 Guardamos descripción (Idea de catálogos). 4. Cumplimiento de ciertas normas.
 Restricciones de seguridad.
 Accesos (Usuarios a datos).
 Operaciones (Operaciones sobre datos). 5. Otras ventajas: Más eficiente gestión de
almacenamiento. Efecto sinérgico.
RESOLUCION DE LA GUIA 8

Elabore un diagrama base de datos de una radio, donde tenga toda la música disponible,
catalogada por género, lista de DJ, se necesita saber que canciones han sido promovidas por
cada DJ y un control de que canciones han sido programadas cada día en la radio.

Elabore un diagrama de base de datos de una empresa de taxis, donde es importante manejar la
siguiente información, autos disponibles para los viajes, motoristas disponibles, lista de viajes
por taxi, y reportes de los clientes que usan dichos taxis.

Investigar que son los procedimientos almacenados.


Un procedimiento almacenado de SQL Server es un grupo de una o varias instrucciones
Transact-SQL o una referencia a un método de Common Runtime Language (CLR) de
Microsoft .NET Framework . Los procedimientos se asemejan a las construcciones de otros
lenguajes de programación, porque pueden:
 Aceptar parámetros de entrada y devolver varios valores en forma de parámetros de
salida al programa que realiza la llamada.
 Contener instrucciones de programación que realicen operaciones en la base de datos.
Entre otras, pueden contener llamadas a otros procedimientos.
 Devolver un valor de estado a un programa que realiza una llamada para indicar si la
operación se ha realizado correctamente o se han producido errores, y el motivo de
estos.
Investigar la sintaxis de los procedimientos.
CREATE PROCEDURE spEjecutar
AS
BEGIN
END

GO
RESOLUCION DE LA GUIA 9

Cree un procedimiento almacenado

Cree un procedimiento almacenado para mostrarme una


lista de repuestos con su nombre, precio, porcentaje de descuento y el valor que tuviera si se
aplica dicho descuento.

Elabore otro que tenga un parámetro que me pida el modelo del auto, y que me muestre todos
los repuestos que pertenecen a ese modelo de auto

Ahora elabore uno que muestre la marca, el país, el nombre del modelo y el precio, pero que me
pida dos parámetros, país y precio, para usarlo en la búsqueda.

También elabore uno que me muestre los datos del repuesto, modelo y marca, a partir de que el
precio de los repuestos, este entre dos valores.
Cree una lista de modelos y que muestre la cantidad de repuestos que hay por cada modelo

QUE ES UN TRIGGERS

Los triggers igual que el resto de objetos de la base de datos también aparecen en la tabla
sys. sysobjets, con el identificador TR en la columna xtype, por lo que
Si deseamos saber cuántos triggers hay en una base de datos, basta hacer una consulta filtrando
con TR en la columna xtype. Esto mismo es válido para el resto de los objetos como
procedimientos almacenados, tablas, vista, etc. sólo que en el caso de los procedimientos en vez
de TR hay que filtrar por P.
Para obtener la definición de los triggers definidos podemos consultar el campo text de la tabla
sys. syscomments donde viene la definición de todos los objetos de la base de datos. En el caso
de que no queremos que la definición, del trigger sea consultada, también podemos añadir la
cláusula WITH ENCRIPTION en la creación del trigger. También podemos obtener información
del trigger ejecutando el procedimiento almacenado sp_help 'tr_nombre_Trigger'
SINTAXIS
CREATE TRIGGER tr_nombre_Trigger
ON dbo.tbTabla
AFTER INSERT, UPDATE
AS
BEGIN
UPDATE tbTabla set campo1 = 'texto' WHERE campo2 = 10
INSERT INTO tbTabla2 VALUES ('1','texto')
END

EJEMPLO DE UN TRIGGER

CREATE TRIGGER TR_InsertCondicional


ON dbo.tbVentas
AFTER INSERT AS
IF
(SELECT COUNT(*) FROM dbo.TbTitulos, inserted
WHERE dbo.TbTitulos.Id_titulo = inserted.Id_titulo) <> @@ROWCOUNT
BEGIN
DELETE dbo.tbVentas FROM dbo.tbVentas, inserted
WHERE dbo.tbVentas.Id_titulo = inserted.Id_titulo AND
inserted.Id_titulo NOT IN
(SELECT Id_titulo
FROM dbo.TbTitulos)
PRINT 'Sólo ejecuta la venta si existe el título pedido.'
END

S-ar putea să vă placă și