2. GESTORES DE BASE DE DATOS
• Un gestor de bases de datos se puede
g p
describir como un contenedor de información,
que organiza la misma en base a una serie de
reglas.
• Dicha información puede ser manipulada
mediante un conjunto de instrucciones que
permitirán al usuario consultar y modificar los
datos contenidos.
3. ADMINISTRACION DE BASE DE DATOS
La administración de un gestor de datos se puede
g p
definir como el conjunto de labores cuyo objetivo
es conseguir un rendimiento óptimo del sistema
de bases de datos, de forma que la información
esté en todo momento disponible y con el menor
tiempo de espera posible para el usuario que la
solicita.
4. ADMINISTRACION DE BASE DE DATOS:
Elementos proporcionados para la manipulación de datos
• Aquí podemos situar las diferentes herramientas,
asistentes, etc., que nos proporciona el gestor para
procesar l d
los datos.
Estrategias de gestión de datos
• En este punto se enmarcan las diferentes políticas a
aplicar para el uso de las herramientas proporcionadas por
el gestor de manera que no interfieran entre ellas al
gestor,
rendimiento conjunto del sistema y consigamos que las
condiciones de funcionamiento del mismo sean óptimas el
mayor tiempo posible.
5. BASE DE DATOS
• Una base de datos está formada por una serie
de elementos , también denominados objetos de
la base de datos.
• Entre los objetos más importantes podemos
destacar los siguientes:
Tabla.
Índice.
Vista.
Procedimiento almacenado.
Función o rol.
Desencadenador.
Desencadenador
8. • Lenguaje que se utiliza para administrar
instancias del Motor de BD de SQL Server
s a c as de oo SQ Se e
• Para crear y administrar objetos de base de
datos, y para insertar, recuperar, modificar y
eliminar datos
datos.
• Es una extensión del lenguaje definido en los
estándares de SQL publicados por la ISO y
ANSI.
• SQL es un lenguaje de consulta, no un
lenguaje de programación
programación.
9. “Expresiones multidimensionales”
Es un lenguaje de secuencias de comandos basado en
instrucciones que se utiliza para definir, manipular y
recuperar datos de objetos multidimensionales de SQL
Server 2005 Analysis Services
El lenguaje MDX proporciona instrucciones de:
DDL
DML
Instrucciones del lenguaje de secuencias de
comandos MDX
d MDX;
Operadores y funciones para la manipulación de
datos recuperados a partir de objetos
multidimensionales; y
La posibilidad de ampliar el lenguaje MDX con
funciones definidas por el usuario.
p
10. El lenguaje DMX (extensiones de minería
de datos)
d d t ) es el ll lenguaje que se utiliza para
j tili
crear y trabajar con modelos de minería de
datos en SSAS.
DMX se compone de instrucciones de
lenguaje:
DDL
DML, y
Funciones y operadores.
p
11. Introducción
El lenguaje de programación Transact-SQL
Tipos de instrucciones de Transact SQL
Transact-SQL
Elementos de la sintaxis de Transact-SQL
12. El lenguaje de programación Transact-SQL
Implementa el estándar ISO del nivel básico
de la especificación ANSI SQL-92
Se pueden ejecutar desde cualquier producto
que cumpla los requisitos básicos
Incluye una funcionalidad ampliada
13. •Tipos de instrucciones de Transact-SQL
Instrucciones del Lenguaje de definición de datos (DDL)
Instrucciones del Lenguaje de control de datos (DCL)
Instrucciones del Lenguaje de tratamiento de datos
14. Instrucciones del Lenguaje de definición de datos
Definen los objetos de la base de datos
CREATE nombreObjeto
ALTER nombreObjeto
DROP nombreObjeto
Deben tener los permisos adecuados
USE northwind
CREATE TABLE customer
(cust_id int,
(cust id int company varchar(40)
varchar(40),
contact varchar(30), phone char(12) )
GO
15. Instrucciones del Lenguaje de control de datos
Establecer o cambiar los permisos
GRANT: Otorga permisos a uno o varios
usuarios o roles para realizar tareas determinadas.
DENY: Utilizado para denegar accesos
REVOKE: Permite eliminar permisos que
previamente se han concedido con GRANT
Deben tener los permisos adecuados
p
USE northwind
GRANT SELECT ON products TO public
GO
16. Instrucciones del Lenguaje de tratamiento de datos
• Las instrucciones DML se utilizan para cambiar datos o
recuperar información
▫ SELECT
▫ INSERT
▫ UPDATE
▫ DELETE
• Deben tener los permisos adecuados
USE northwind
SELECT categoryid, productname, productid, unitprice
FROM products
GO
17. Elementos de la sintaxis de Transact-SQL
Directivas de Funciones del
proceso por lotes sistema
Comentarios Operadores
Identificadores Expresiones
Tipos de datos Elementos del
lenguaje d control
l j de t l
Variables de flujo
Palabras clave
P l b l
reservadas
18. Directivas de proceso por lotes
GO
Envía lotes de instrucciones de Transact-SQL a
las herramientas y utilidades
No se trata, realmente, de una instrucción de
Transact-SQL
EXEC
Ejecuta una función definida por el usuario, un
procedimiento de sistema, un procedimiento
almacenado definido por el usuario o un
procedimiento almacenado extendido
Controla la ejecución de una cadena de
j
caracteres dentro de un lote de Transact-SQL
19. Comentarios
Comentarios de línea
Ejemplo 1
SELECT productname
, (unitsinstock - unitsonorder) -- Calcula el inventario
, supplierID
FROM products
GO
Ejemplo 2
/*
/
Comentarios de bloque
Este código devuelve todas las filas de la tabla
products y muestra el precio por unidad, el precio
aumentado en un 10 por ciento y el nombre del producto
producto.
*/
USE northwind
SELECT unitprice, (unitprice * 1.1), productname
FROM products
GO
20. Identificadores
Identificadores estándar
El primer carácter debe ser un carácter alfabético
Otros caracteres pueden incluir letras, números o
símbolos
Los identificadores que comienzan con un símbolo tienen
usos especiales
Identificadores delimitados
Se utilizan cuando los nombres contienen espacios
incrustados
Se utilizan cuando partes de los nombres incluyen
palabras reservadas
Deben encerrarse entre corchetes ([ ]) o dobles comillas ("
")
21. Directrices de denominación para los identificadores
Utilizar nombres cortos
Utilizar nombres significativos cuando sea posible
Utilizar una convención de denominación clara y
sencilla
ill
Utilizar un identificador que distinga el tipo de objeto
Vistas
Procedimientos almacenados
Hacer que los nombres de los objetos y de los
usuarios sean únicos
Tabla sales y función sales
22. Tipos de datos
Números Variaciones de
SQL
Fechas
Texto e imagen
Caracteres
Tablas
Binario
Cursores
C
Identificadores
únicos (GUID) Tipos de datos
definidos por el
usuario
23. Variables
• Variable definida por el usuario en una instrucción
DECLARE @
• Valores asignados con una instrucción SET o
SELECT @
• Las variables tienen ámbito Local
USE northwind
DECLARE @E ID varchar(11)
@EmpID h (11)
,@vlName char(20)
SET @vlname = 'Dodsworth'
SELECT @E ID = employeeid
@EmpID l id
FROM employees
WHERE LastName = @vlname
SELECT @EmpID AS EmployeeID
GO
24. Funciones del sistema
Funciones de agregado
USE northwind
SELECT AVG (unitprice) AS AvgPrice FROM products
GO
Funciones escalares
USE northwind
th i d
SELECT DB_NAME() AS 'database’
GO
Funciones de conjunto de filas
SELECT *
FROM OPENQUERY
(OracleSvr, 'SELECT name, id FROM owner.titles')
25. Ejemplos de función del sistema
Ejemplo 1
SELECT 'ANSI:', CONVERT(varchar(30), GETDATE(), 102) AS
Style
UNION
SELECT 'Japanese:', CONVERT(varchar(30), GETDATE(), 111)
UNION
SELECT 'European:', CONVERT(varchar(30), GETDATE(), 113)
European: ,
GO
Resultado
Style
ANSI: 1998.03.19
Japanese: 1998/03/19
European: 19 Mar 1998 16:34:40:616
26. Operadores
Tipos de operadores
Aritmético
A it éti
Co pa ac ó
Comparación
Concatenación de cadenas
Lógico
Niveles de precedencia de los operadores
27. Expresiones
Combinación de símbolos y operadores
Evaluación de valores escalares simples
El tipo de datos del resultado depende de los
elementos que forman la expresión
USE northwind
i
SELECT OrderID, ProductID
,(UnitPrice * Quantity) as ExtendedAmount
FROM [Order Details]
WHERE (UnitPrice * Quantity) > 10000
GO
28. Elementos del lenguaje de control de flujo
Ejemplo 2
• Nivel de instrucción DECLARE @n tinyint
SET @n = 5
Bloques BEGIN … END IF (@n BETWEEN 4 and 6)
(@ )
BEGIN
Bloques IF … ELSE WHILE (@n > 0)
BEGIN
Construcciones WHILE
C t i SELECT @n AS 'Number'
,CASE
• Nivel de fila WHEN (@n % 2) = 1
THEN ‘ODD'
▫ CASE expresión ELSE ‘EVEN'
END AS 'Type'
SET @n = @n - 1
END
END
ELSE
PRINT ‘NO ANALYSIS‘
GO
29. Palabras clave reservadas
Nombres de identificadores que tienen un
significado especial
Palabras clave de Transact-SQL
Palabras clave ANSI SQL-92
Palabras clave reservadas de ODBC
No utilizar palabras clave reservadas para
nombres de identificadores