Professional Documents
Culture Documents
3 SEMESTRE A
Autor
JAVIER CERCADO
Ao Lectivo
2016 - 2017
UNIVERSIDAD AGRARIA DEL ECUADOR
MILAGRO
ASIGNATURA:
BASE DE DATOS I.
DOCENTE:
ING. OSCAR BERMEO., MSc.
PERTENECE A:
JAVIER CERCADO
UNIDAD/SEMANA/CLASE:
5/15/58
TEMA:
USO DE FUNCIONES EN SQL
ESPECIALIDAD:
INGENIERA EN COMPUTACIN E INFORMTICA.
III SEMESTRE PARELO A
PERODO LECTIVO:
2016 2017
1
NDICE
1. Introduccin............................................................................................................................. 3
2. Resumen del contenido ........................................................................................................ 5
2.1. Plataforma de datos SQL Server ................................................................................... 5
2.2. Comandos ......................................................................................................................... 5
2.3. Introduccin a limitaciones y restricciones en las funciones de SQL ....................... 6
2.4. Funciones de Service Broker en SQL ........................................................................... 7
2.5. Uso de funciones en SQL ............................................................................................... 7
2.5.1. Introduccin a funcin .............................................................................................. 7
2.5.2. Tipos de Funciones en SQL ................................................................................... 7
2.6. Funciones Escalares en SQL Server ............................................................................ 8
2.7. Funciones con Valores de Tabla en Lnea ................................................................... 8
2.8. Funciones con Valores de Tabla y Mltiples Instrucciones ....................................... 9
2.9. SCHEMABINDING En SQL Server ............................................................................... 9
2.10. Modificar una funcin definida por el Usuario en SQL Server .............................. 9
2.11. Borrar una funcin definida por el Usuario en SQL Server.................................. 10
2.12. Qu es un motor de bsqueda en SQL Server? ................................................. 12
2.13. Comandos.................................................................................................................... 12
3. Ejemplo de Base de Datos:................................................................................................ 12
4. Microsoft SQL Server .......................................................................................................... 13
5. Historia Microsoft SQL Server 2008 ................................................................................ 13
6. Bibliografa ............................................................................................................................. 15
2
UNIDAD/SEMANA/CLASE:
5/15/58
TEMA:
USO DE FUNCIONES EN SQL SERVER
1. Introduccin
Las bases de datos son un gran pilar de la programacin actual, ya que nos
permiten almacenar y usar de forma rpida y eficiente cantidades ingentes de
datos con cierta facilidad. En la actualidad se usa de forma mayoritaria las bases
de datos relacionales (dominadas por distintos gestores a travs del lenguaje SQL,
en gran medida). En resumen un modelo entidad-relacin, es y ha sido durante
aos la mejor forma de representar la estructura de bases de datos relacionales
(o de representar sus esquemas). Este modelo es solo y exclusivamente un
mtodo del que disponemos para disear estos esquemas que posteriormente
debemos de implementar en un gestor de BBDD (bases de datos). Este modelo se
representa a travs de diagramas y est formado por varios elementos.
Basado en las caractersticas de solidez de SQL Server 2000, SQL Server 2005
constituye una solucin de anlisis y administracin de datos integrados que
ayudar a las organizaciones de cualquier tamao a:
Crear, implementar y administrar aplicaciones empresariales que resulten ms
seguras, escalables y confiables.
Maximizar la productividad de la tecnologa de la informacin al reducir la
complejidad de los procesos de creacin, implementacin y administracin de
aplicaciones de bases de datos.
Compartir datos en varias plataformas, aplicaciones y dispositivos para facilitar
la conexin de sistemas internos y externos.
Controlar los costes sin poner en peligro el rendimiento, la disponibilidad,
escalabilidad o seguridad.
En la actualidad, las organizaciones deben afrontar numerosos retos relacionados
con los datos; por ejemplo, la necesidad de toma de decisiones ms rpidas y
controladas por datos, la necesidad de aumentar la productividad y flexibilidad del
personal de desarrollo y la presin para reducir los presupuestos generales
relacionados con la tecnologa de la informacin, a la vez que se exige escalar la
infraestructura para que se adapte a exigencias cada vez mayores.
La siguiente versin de Microsoft SQL Server se ha diseado para ayudar a
las empresas a enfrentarse a estos retos. Microsoft SQL Server 2005 es el
software de ltima generacin para el anlisis y la administracin de datos. Aporta
un mayor grado de seguridad, escalabilidad y disponibilidad a los datos de la
empresa y a las aplicaciones de anlisis, al mismo tiempo que simplifica su
creacin, implementacin y administracin.
En 1986, el ANSI adopt SQL (sustancialmente adopt el dialecto SQL de IBM)
como estndar para los lenguajes relacionales y en 1987 se transform en
3
estndar ISO. Esta versin del estndar va con el nombre de SQL/86. En los aos
siguientes, ste ha sufrido diversas revisiones que han conducido primero a la
versin SQL/89 y, posteriormente, a la actual SQL/92.
Las experimentaciones con ese prototipo condujeron, entre 1976 y 1977, a una
revisin del lenguaje (SEQUEL/2), que a partir de ese momento cambi de
nombre por motivos legales, convirtindose en SQL. El prototipo (System R),
basado en este lenguaje, se adopt y utiliz internamente en IBM y lo adoptaron
algunos de sus clientes elegidos. Gracias al xito de este sistema, que no estaba
todava comercializado, tambin otras compaas empezaron a desarrollar sus
productos relacionales basados en SQL. A partir de 1981, IBM comenz a
entregar sus productos relacionales y en 1983 empez a vender DB2. En el curso
de los aos ochenta, numerosas compaas (por ejemplo Oracle y Sybase, slo
por citar algunos) comercializaron productos basados en SQL, que se convierte en
el estndar industrial de hecho por lo que respecta a las bases de datos
relacionales.
El hecho de tener un estndar definido por un lenguaje para bases de datos
relacionales abre potencialmente el camino a la intercomunicabilidad entre todos
los productos que se basan en l. Desde el punto de vista prctico, por desgracia
las cosas fueron de otro modo. Efectivamente, en general cada productor adopta e
implementa en la propia base de datos slo el corazn del lenguaje SQL (el as
llamado Entry level o al mximo el Intermediate level), extendindolo de manera
individual segn la propia visin que cada cual tenga del mundo de las bases de
datos.La historia de SQL (que se pronuncia deletreando en ingls las letras que lo
componen, es decir "ese-cu-ele" y no "siquel" como se oye a menudo) empieza en
1974 con la definicin, por parte de Donald Chamberlin y de otras personas que
trabajaban en los laboratorios de investigacin de IBM, de un lenguaje para la
especificacin de las caractersticas de las bases de datos que adoptaban el
modelo relacional. Este lenguaje se llamaba SEQUEL (Structured English Query
Language) y se implement en un prototipo llamado SEQUEL-XRM entre 1974 y
1975.
Actualmente, est en marcha un proceso de revisin del lenguaje por parte de los
comits ANSI e ISO, que debera terminar en la definicin de lo que en este
momento se conoce como SQL3. Las caractersticas principales de esta nueva
encarnacin de SQL deberan ser su transformacin en un lenguaje stand-alone
(mientras ahora se usa como lenguaje hospedado en otros lenguajes) y la
introduccin de nuevos tipos de datos ms complejos que permitan, por ejemplo,
el tratamiento de datos multimediales.
4
2. Resumen del contenido
5
Comandos DLL
Comando Descripcin
CREATE Utilizado para crear nuevas tablas, campos e ndices
DROP Empleado para eliminar tablas e ndices
Utilizado para modificar las tablas agregando campos o cambiando la
ALTER
definicin de los campos.
Comandos DML
Comando Descripcin
Utilizado para consultar registros de la base de datos que satisfagan un
SELECT
criterio determinado
Utilizado para cargar lotes de datos en la base de datos en una nica
INSERT
operacin.
UPDATE Utilizado para modificar los valores de los campos y registros especificados
DELETE Utilizado para eliminar registros de una tabla de una base de datos
6
funcin Transact-SQL definida por el usuario cuenta como uno de los 32
niveles de anidamiento. Los mtodos invocados desde el cdigo administrado
no cuentan para este lmite.
Seguridad: Permisos
Se requiere el permiso CREATE FUNCTION en la base de datos y el permiso
ALTER en el esquema en el que se va a crear la funcin. Si la funcin especfica
un tipo definido por el usuario, requiere el permiso EXECUTE para ese tipo.
7
2.6. Funciones Escalares en SQL Server
Las funciones escalares son aquellas que reciben parmetros de entrada para ser
procesados y al final retornar en un tipo de dato sencillo. Cuando hablo de sencillo
me refiero a tipos de datos elementales como INT, FLOAT, VARCHAR, etc.
SQL Server no permite que las funciones escalares retornen en los tipos text,
ntext, image, cursor y timestamp. Al igual que MySQL, usaremos la palabra
reservada RETURNS para indicar el tipo de dato en el cual retornar la funcin. El
cuerpo de una funcin escalar est contenido en un bloque de instrucciones como
en los procedimientos.
Sintaxis de creacin:
CREATE FUNCTION nombre_funcin ( [parmetro1, parmetro2,...])
RETURNS tipo_de_dato
[WITH ENCRYPTION | WITH SCHEMABINDING]
[AS]
BEGIN<bloque_de_instrucciones>
RETURN valor_retornado
END
Las funciones que retornan tablas son muy tiles cuando tenemos consultas que
tengan JOINS debido a la reduccin de complejidad
8
2.8. Funciones con Valores de Tabla y Mltiples Instrucciones
Este tipo de funciones son similares a las funciones de tabla en lnea, solo que
incluyen un bloque de sentencias para manipular la informacin antes de retornar
la tabla.
Sintaxis de creacin:
9
WITH SCHEMABINDING
BEGIN
RETURN @a+@b+@c;
END;
10
SQL Server Management Studio
SQL Server 2005 simplifica el proceso de administracin al incluir una consola de
administracin integrada para supervisar y controlar la base de datos relacional
SQL Server, as como los servicios Integration Services, Analysis Services,
Reporting Services, Notification Services y SQL Mobile en un amplio nmero de
servidores y bases de datos distribuidos. Los administradores de bases de datos
pueden realizar varias tareas al mismo tiempo que incluyen: creacin y ejecucin
de una consulta, visualizacin de objetos del servidor, administracin de un objeto,
supervisin de la actividad del sistema y visualizacin de la ayuda en lnea. SQL
Server Management Studio aloja un entorno de desarrollo para la creacin, edicin
y administracin de secuencias de comandos y procedimientos almacenados a
travs de Transact-SQL, Multidimensional Expressions (MDX), XMLA y SQL
Server Mobile Edition. Management Studio se encuentra ya integrado con control
de cdigo fuente e incluye herramientas para programar trabajos de SQL Server
Agent y administrar planes de mantenimiento a fin de automatizar las tareas
diarias de mantenimiento y funcionamiento. La integracin de las tareas de
administracin y creacin en una sola herramienta junto con la capacidad de
administrar todo tipo de servidores aportan una productividad mejorada a los
administradores de bases de datos.
Disponemos de miles de procedimientos almacenados y con SQL Server 2000
sola tener que usar una herramienta distinta para controlar el cdigo y, despus,
abrir el analizador de consultas para editarlo. Con SQL Server 2005 todo este
proceso se integra en Management Studio. Ahora puedo realizar tareas rutinarias
con un 20% ms de rapidez con Management Studio.
--Joyce Behrendt, Director de desarrollo, planeacin y anlisis de estrategias
corporativas de TI (Information Technology Corporate Strategy Planning and
Analysis), Microsoft
El lenguaje de consulta estructurado (SQL Structured Query Language) es un
lenguaje de base de datos normalizado, utilizado por el motor de base de datos de
Microsoft Jet. SQL se utiliza para crear objetos QueryDef, como el argumento de
origen del mtodo OpenRecordSet y como la propiedad RecordSource del control
de datos. Tambin se puede utilizar con el mtodo Execute para crear y manipular
directamente las bases de datos Jet y crear consultas SQL de paso a travs para
manipular bases de datos remotas cliente - servidor.
11
Figura 2. Ejemplo de una Base de Datos con Tablas,
Atributos y Claves Principales
12
3. Que permita hacer estudios estadsticos que arrojen informacin significativa
de los sectores que representan mayor captacin, a fin de dirigir sus campaas
publicitarias de forma adecuada.
4. Que emita comprobantes fiscales para deduccin.
5. Que emita un consolidado rpido del monto global aportado por cada una de
los sectores que colaboran con donaciones.
13
noticias y malas noticias. La buena noticia es que el lector obtendr una mirada
concisa y profunda de lo que el autor consider como las mejoras ms importantes
en la versin de SQL Server 2008. La mala noticia es que en este libro
simplemente no hay el suficiente espacio para proporcionar una cobertura amplia
y completa de todas estas caractersticas. Hubo que tomar decisiones difciles
acerca de qu innovaciones cubrir y el nivel de profundidad de cobertura para
cada una de ellas. Cuando hubo que decidir entre las que el autor consideraba
que deberan cubrirse y las que no parecan ser tan relevantes, se opt por
seleccionar las que el autor consider las ms importantes para las empresas y
las que abarcaban los mayores cambios en comparacin con la versin anterior.
Esperemos que el lector est de acuerdo con las elecciones que el autor hizo.
Este libro tiene como principal intencin ser una gua para introducir al lector a
esas innovaciones. Se proporcionan numerosos ejemplos de cmo hacer uso de
esas innovaciones; el objetivo de esos ejemplos es ayudarle a obtener una mejor
comprensin del propsito de las innovaciones y una idea clara de su
implementacin. Este libro no tiene la intencin de ser una gua de cmo hacer las
cosas paso a paso; por lo tanto, unas pocas y pequeas diferencias de
implementacin no debern afectar el propsito general de este libro. Se ha hecho
un gran esfuerzo para asegurarse de que la informacin presentada aqu se
encuentre lo ms actualizada posible.
14
6. Bibliografa
Cristina, T. M. (Enero, 2002). Aprenda ya SQL Server 2005 tcnicas aplicadas. Mxico, D.F.:
McGraw-Hill Interamericana.
Francisco, S. (Enero, 2012). Aprenda SQL Server 2012. Mxico, D.F.: Alfaomega Grupo Editor.
R, S. W. (Enero, 2002). SQL Server 2005: manual del administrador. Madrid, Espaa: McGraw-Hill
Interamericana.
Andy Oppel, S. R. (Diciembre, 2010). Fundamentos de SQL (3a. ed.). Mxico, D.F.: McGraw-Hill
Interamericana.
Brust Andrew J., F. S. (Enero, 2002). Programacin avanzada en SQL Server 2005. Mxico, D.F.:
McGraw-Hill Interamericana.
15