Unid2 transact sql 1
-
Upload
alexsilvarsm -
Category
Education
-
view
1.418 -
download
2
Transcript of Unid2 transact sql 1
ÓÓADMINISTRACIÓN ADMINISTRACIÓN DE BASE DE DE BASE DE DE BASE DE DE BASE DE
DATOSDATOSDATOSDATOS
GESTORES DE BASE DE DATOSGESTORES DE BASE DE DATOS
• Un gestor de bases de datos se puedeg pdescribir como un contenedor de información,que organiza la misma en base a una serie dereglas.
• Dicha información puede ser manipuladamediante un conjunto de instrucciones quemediante un conjunto de instrucciones quepermitirán al usuario consultar y modificar losdatos contenidos.
ADMINISTRACION DE BASE DE DATOSADMINISTRACION DE BASE DE DATOS
La administración de un gestor de datos se puedeg pdefinir como el conjunto de labores cuyo objetivoes conseguir un rendimiento óptimo del sistemade bases de datos, de forma que la informaciónesté en todo momento disponible y con el menortiempo de espera posible para el usuario que latiempo de espera posible para el usuario que lasolicita.
ADMINISTRACION DE BASE DE DATOS:
Elementos proporcionados para la manipulación de datosElementos proporcionados para la manipulación de datos• Aquí podemos situar las diferentes herramientas,
asistentes, etc., que nos proporciona el gestor paral dprocesar los datos.
Estrategias de gestión de datosEstrategias de gestión de datos• En este punto se enmarcan las diferentes políticas a
aplicar para el uso de las herramientas proporcionadas porel gestor de manera que no interfieran entre ellas alel gestor, de manera que no interfieran entre ellas alrendimiento conjunto del sistema y consigamos que lascondiciones de funcionamiento del mismo sean óptimas elmayor tiempo posible.mayor tiempo posible.
BASE DE DATOS
• Una base de datos está formada por una seriede elementos , también denominados objetos dela base de datos.Entre los objetos más importantes podemos• Entre los objetos más importantes podemosdestacar los siguientes:
Tabla.Tabla.Índice.Vista.Procedimiento almacenado.Función o rol.DesencadenadorDesencadenador.
TRANSACT SQLTRANSACT SQL
Referencia de Lenguaje de SQL Server
• Lenguaje que se utiliza para administrarinstancias del Motor de BD de SQL Servers a c as de o o de de SQ Se e
• Para crear y administrar objetos de base dedatos, y para insertar, recuperar, modificar yeliminar datoseliminar datos.
• Es una extensión del lenguaje definido en losestándares de SQL publicados por la ISO yestándares de SQL publicados por la ISO yANSI.
• SQL es un lenguaje de consulta, no unlenguaje de programaciónlenguaje de programación.
“Expresiones multidimensionales”
Es un lenguaje de secuencias de comandos basado eninstrucciones que se utiliza para definir, manipular yrecuperar datos de objetos multidimensionales de SQLServer 2005 Analysis Services
El lenguaje MDX proporciona instrucciones de:DDLDDLDMLInstrucciones del lenguaje de secuencias de
d MDXcomandos MDX;Operadores y funciones para la manipulación dedatos recuperados a partir de objetosmultidimensionales; yLa posibilidad de ampliar el lenguaje MDX confunciones definidas por el usuario.p
El lenguaje DMX (extensiones de mineríad d t ) l l j tilide datos) es el lenguaje que se utiliza paracrear y trabajar con modelos de minería dedatos en SSAS.datos en SSAS.
DMX se compone de instrucciones delenguaje:lenguaje:
DDL
DML, y
Funciones y operadores.y p
Introducción
El lenguaje de programación Transact-SQL
Tipos de instrucciones de Transact SQLTipos de instrucciones de Transact-SQL
Elementos de la sintaxis de Transact-SQL
El lenguaje de programación Transact-SQL
Implementa el estándar ISO del nivel básicode la especificación ANSI SQL-92
Se pueden ejecutar desde cualquier productoque cumpla los requisitos básicos
Incluye una funcionalidad ampliada
•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 control de datos (DCL)
Instrucciones del Lenguaje de tratamiento de datos
Instrucciones del Lenguaje de definición de datos
Definen los objetos de la base de datos
CREATE nombreObjeto
ALTER nombreObjetoALTER nombreObjeto
DROP nombreObjeto
Deben tener los permisos adecuados
USE northwindCREATE TABLE customer(cust id int company varchar(40)(cust_id int, company varchar(40), contact varchar(30), phone char(12) )GO
Instrucciones del Lenguaje de control de datos
Establecer o cambiar los permisos
GRANT: Otorga permisos a uno o variosusuarios o roles para realizar tareas determinadas.
DENY: Utilizado para denegar accesos
REVOKE: Permite eliminar permisos queREVOKE: Permite eliminar permisos quepreviamente se han concedido con GRANT
Deben tener los permisos adecuadosp
USE northwindGRANT SELECT ON products TO publicGO
Instrucciones del Lenguaje de tratamiento de datos
• Las instrucciones DML se utilizan para cambiar datos o Las instrucciones DML se utilizan para cambiar datos o recuperar información▫ SELECT
INSERT▫ INSERT▫ UPDATE▫ DELETE
• Deben tener los permisos adecuados
USE northwindSELECT categoryid, productname, productid, unitpriceFROM productsGO
Elementos de la sintaxis de Transact-SQL
Directivas de proceso por lotes
Funciones del sistema
Comentarios
Identificadores
Operadores
ExpresionesIdentificadores
Tipos de datos
Expresiones
Elementos dell j d t l
Variableslenguaje de controlde flujo
P l b lPalabras clave reservadas
Directivas de proceso por lotes
GOEnvía lotes de instrucciones de Transact-SQL alas herramientas y utilidadesy
No se trata, realmente, de una instrucción deTransact-SQL
EXECEjecuta una función definida por el usuario, unprocedimiento de sistema, un procedimientoalmacenado definido por el usuario o unalmacenado definido por el usuario o unprocedimiento almacenado extendido
Controla la ejecución de una cadena dejcaracteres dentro de un lote de Transact-SQL
Comentarios
Comentarios de líneaEjemplo 1
SELECT productname, (unitsinstock - unitsonorder) -- Calcula el inventario, supplierIDFROM productsFROM productsGO
/
Ejemplo 2
Comentarios de bloque/* Este código devuelve todas las filas de la tablaproducts y muestra el precio por unidad, el precioaumentado en un 10 por ciento y el nombre del productoaumentado en un 10 por ciento y el nombre del producto.*/USE northwindSELECT unitprice, (unitprice * 1.1), productnameSELECT unitprice, (unitprice 1.1), productnameFROM productsGO
Identificadores
Identificadores estándar
El primer carácter debe ser un carácter alfabéticoEl 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 tienenusos especiales
Identificadores delimitados
Se utilizan cuando los nombres contienen espaciosincrustados
Se utilizan cuando partes de los nombres incluyenSe utilizan cuando partes de los nombres incluyenpalabras reservadas
Deben encerrarse entre corchetes ([ ]) o dobles comillas (" ")")
Directrices de denominación para los identificadores
Utilizar nombres cortos
Utilizar nombres significativos cuando sea posible
Utilizar una convención de denominación clara yillsencilla
Utilizar un identificador que distinga el tipo de objeto
Vistas
Procedimientos almacenadosProcedimientos almacenadosHacer que los nombres de los objetos y de losusuarios sean únicosusuarios sean únicos
Tabla sales y función sales
Tipos de datos
Números Variaciones de SQL
Fechas
Caracteres
SQL
Texto e imagenCaracteres
BinarioTablas
CIdentificadores únicos (GUID)
Cursores
Tipos de datosúnicos (GUID) Tipos de datos definidos por el usuario
Variables
• Variable definida por el usuario en una instrucciónDECLARE @DECLARE @
• Valores asignados con una instrucción SET o SELECT @SELECT @
• Las variables tienen ámbito Local
USE northwindDECLARE @E ID h (11)DECLARE @EmpID varchar(11)
,@vlName char(20)SET @vlname = 'Dodsworth'SELECT @E ID l idSELECT @EmpID = employeeidFROM employeesWHERE LastName = @vlnameSELECT @EmpID AS EmployeeIDGO
Funciones del sistemaFunciones de agregado
USE northwindUSE northwindSELECT AVG (unitprice) AS AvgPrice FROM productsGO
Funciones escalaresUSE th i dUSE northwindSELECT DB_NAME() AS 'database’GO
Funciones de conjunto de filasSELECT *FROM OPENQUERY(OracleSvr, 'SELECT name, id FROM owner.titles')
Ejemplos de función del sistema
Ejemplo 1
SELECT 'ANSI:', CONVERT(varchar(30), GETDATE(), 102) AS StyleUNIONUNIONSELECT 'Japanese:', CONVERT(varchar(30), GETDATE(), 111)UNIONSELECT 'European:', CONVERT(varchar(30), GETDATE(), 113)SELECT European: , CONVERT(varchar(30), GETDATE(), 113)GO
Resultado
StyleStyleANSI: 1998.03.19ANSI:Japanese:European:
1998.03.191998/03/1919 Mar 1998 16:34:40:616
Operadores
Tipos de operadores
A it étiAritmético
ComparaciónCo pa ac ó
Concatenación de cadenas
LógicoNiveles de precedencia de los operadoresNiveles de precedencia de los operadores
Expresiones
Combinación de símbolos y operadores
Evaluación de valores escalares simplesEvaluación de valores escalares simples
El tipo de datos del resultado depende de los elementos que forman la expresiónelementos que forman la expresión
iUSE northwindSELECT OrderID, ProductID
,(UnitPrice * Quantity) as ExtendedAmountFROM [Order Details]FROM [Order Details]WHERE (UnitPrice * Quantity) > 10000GO
Elementos del lenguaje de control de flujoEjemplo 2
• Nivel de instrucción
Bloques BEGIN … ENDDECLARE @n tinyintSET @n = 5IF (@n BETWEEN 4 and 6)
Bloques IF … ELSE
C t i WHILE
(@ )BEGINWHILE (@n > 0)BEGIN
Construcciones WHILE
• Nivel de filaSELECT @n AS 'Number',CASEWHEN (@n % 2) = 1
▫ CASE expresiónTHEN ‘ODD'
ELSE ‘EVEN'END AS 'Type'
SET @n = @n - 1END
ENDELSEELSEPRINT ‘NO ANALYSIS‘GO
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 ODBCPalabras clave reservadas de ODBCNo utilizar palabras clave reservadas paranombres de identificadoresnombres de identificadores
Práctica A: Uso de los Libros en pantalla de SQL Server