categorias de procedimientos almacenados

13
Pereda Miñano, Carlos Alberto Alumno:

Upload: carlos-pereda-minano

Post on 08-Jul-2015

4.726 views

Category:

Education


1 download

DESCRIPTION

Se detallan las 5 categorias de procedimientos almacenados.

TRANSCRIPT

Page 1: Categorias de Procedimientos Almacenados

•Pereda Miñano, Carlos AlbertoAlumno:

Page 2: Categorias de Procedimientos Almacenados

Existen 5 categorías de procedimientos almacenados:

Procedimientos almacenados del sistema.Procedimientos almacenados locales.Procedimientos almacenados temporarios.Procedimientos almacenados extendidos.Procedimientos almacenados remotos.

Page 3: Categorias de Procedimientos Almacenados

Los procedimientos almacenados del sistema son guardados en la base de datos Master y son típicamente identificados por el prefijo sp_ . Ellos realizan una amplia variedad de tareas para soportar las funciones del SQL Server soportando: llamadas de aplicaciones externas para datos de las tablas del sistema, procedimientos generales para administración de las bases de datos, y funciones de administración de seguridad. Por ejemplo, se pueden ver los privilegios de una tabla usando el procedimiento almacenado de catálogo sp_table_privileges. El comando siguiente utiliza este procedimiento almacenado para mostrar los privilegios de la tabla Customers en la base de datos Northwind:

Page 4: Categorias de Procedimientos Almacenados
Page 5: Categorias de Procedimientos Almacenados

Una tarea común de administración de bases de datos  es consultar la información acerca de los usuarios y procesos que se están ejecutando en una base de datos. Este paso es importante cuando se debe dar de baja la base de datos. El siguiente comando usa el procedimiento sp_who para mostrar todos los procesos en uso por el usuario PC-MSI\Carloncho:

Page 6: Categorias de Procedimientos Almacenados

La seguridad de base de datos es crítica para la mayoría de las organizaciones que almacenan datos privados en su base de datos. El comando siguiente usa el procedimiento almacenado del sistema sp_validatelogins para mostrar cualquier usuario y grupo de usuarios Windows NT o Windows 2000 huérfanos que no existan más y que aún tengan entradas en las tablas del sistema del SQL Server:

Page 7: Categorias de Procedimientos Almacenados

Los procedimientos almacenados locales son usualmente almacenados en una base de datos y están típicamente diseñados para completar tareas en la base de datos donde residen. Un procedimiento almacenado local se podría crear también para personalizar código de los procedimientos almacenados del sistema. Para crear una tarea personalizada basada sobre un procedimiento almacenado del sistema, primero copie el contenido del procedimiento almacenado del sistema y guarde el nuevo procedimiento almacenado y guarde el nuevo procedimiento almacenado como un procedimiento almacenado local.

Page 8: Categorias de Procedimientos Almacenados

Un procedimiento almacenado temporario es similar a un procedimiento almacenado local, pero existe sólo hasta que se cierre la conexión que lo creó o se dé de baja el SQL Server, dependiendo del tipo de procedimiento almacenado. Estos procedimientos tienen una existencia volátil debido a que son creados y almacenados en la base de datos TempDB. TempDB se recrea cuando se reinicia el servidor; por lo tanto, todos los objetos dentro de la base de datos desaparecen después que se cierra conexión con la base de datos.

De forma similar a las tablas temporales, los procedimientos almacenados temporales (tanto privados como globales) se pueden crear agregando los prefijos # y ## delante del nombre del procedimiento. # denota un procedimiento almacenado temporal local; ## denota un procedimiento almacenado temporal global. Estos procedimientos dejan de existir cuando se cierra SQL Server.

Page 9: Categorias de Procedimientos Almacenados

Cualquier conexión puede ejecutar un procedimiento almacenado temporal global. Éste existe hasta que se cierra la conexión que el usuario utilizó para crearlo, y hasta que se completan todas las versiones del procedimiento que se estuvieran ejecutando mediante otras conexiones. Una vez cerrada la conexión que se utilizó para crear el procedimiento almacenado, éste ya no se puede volver a ejecutar. Sólo podrán finalizar las conexiones que hayan empezado a ejecutar el procedimiento almacenado.

Si se crea directamente en la base de datos tempdb un procedimiento almacenado sin el prefijo # o ##, el procedimiento en cuestión se eliminará automáticamente cuando se cierre SQL Server, ya que tempdb se vuelve a crear cada vez que se inicia SQL Server. Los procedimientos creados directamente en tempdbexisten incluso después de haber finalizado la conexión en que se crearon.

Page 10: Categorias de Procedimientos Almacenados
Page 11: Categorias de Procedimientos Almacenados

Los procedimientos almacenados extendidos permiten crear rutinas externas propias en un lenguaje de programación como C. Estos procedimientos se muestran ante los usuarios como procedimientos almacenados normales y se ejecutan del mismo modo. Es posible pasar parámetros a procedimientos almacenados extendidos y éstos pueden devolver resultados y estados.

Los procedimientos almacenados extendidos son DLL que una instancia de SQL Server puede cargar y ejecutar dinámicamente. Estos procedimientos se ejecutan directamente en el espacio de dirección de una instancia de SQL Server y se programan mediante la API Procedimientos almacenados extendidos de SQL Server.

Estos procedimientos almacenados extendidos utilizan el prefijo xp_.

Page 12: Categorias de Procedimientos Almacenados
Page 13: Categorias de Procedimientos Almacenados

Son los procedimientos que se ejecutan en algún servidor que se encuentre vinculado a algún cliente.