Base De Datos

Páginas: 12 (2844 palabras) Publicado: 11 de agosto de 2012
PROCEDIMIENTO ALMACENADO (STORED PROCEDURE)

Los procedimientos almacenados (stored procedures) son una sucesión ordenada de instrucciones t-sql que pueden recibir y devolver parámetros provistos por el usuario y se pueden guardar en el servidor con un nombre, para luego poder invocarlos y ejecutarlos. En las nuevas versiones, se pueden usar procedimientos almacenados usando clr. Unprocedimiento almacenado clr. Es una referencia a un método de un ensamble de .net framework que puede aceptar y devolver parámetros suministrados por el usuario. 
Microsoft sql server proporciona el mecanismo de procedimiento almacenado para facilitar el proceso de desarrollo de base de datos mediante la agrupación de instrucciones transact-sql en bloques manejables.

* Los procedimientosalmacenados y rutinas se crean con comandos create procedure y create function.
* Una rutina es un procedimiento o una función. Un procedimiento se invoca usando un comando call, y sólo puede pasar valores usando variables de salida. Una función puede llamarse desde dentro de un comando como cualquier otra función (invocando el nombre de la función), y puede retornar un valor escalar.
* Lasrutinas almacenadas pueden llamar otras rutinas almacenadas.
* Desde mysql 5.0.1, los procedimientos almacenados se asocian con una base de datos.
Esto tiene varias implicaciones:
* Cunado se invoca la rutina, se realiza implícitamente use db_name (y se deshace cuando acaba la rutina), los comandos use dentro de procedimientos almacenados no se permiten.
* Puede calificar los nombres derutina con el nombre de la base de datos, esto puede usarse para referirse a una rutina que no esté en la base de datos actual, por ejemplo, para invocar procedimientos almacenados p o funciones f esto se asocia con la base de datos test, puede decir call test.p () o test.f ().
* Cuando se borra una base de datos, todos los procedimientos almacenados asociados con ella también se borran.Lo siguiente lo podemos usar para crear, alterar, borrar, y consultar procedimientos almacenados y funciones.

Create procedure y create function:
Ejemplo:
CREATE PROCEDURE sp_name (parameter)

CREATE FUNCTION sp_name (parameter)
RETURNS type
Parameter:
[IN | OUT | INOUT] param_name type

 Alter procedure y alter function:
Ejemplo:
ALTER {PROCEDURE | FUNCTION} sp_name[characteristic ...]

 Drop procedure y drop function:
Ejemplo:
DROP {PROCEDURE | FUNCTION} [IF EXISTS] sp_name.

Show create procedure y show create function: (retorna la cadena exacta que puede usarse para recrear la rutina nombrada).
Ejemplo:
SHOW CREATE {PROCEDURE | FUNCTION} sp_name

Create Function:
Ejemplo:
CREATE FUNCTION `test’. ‘Hello`(s CHAR (20)) RETURNS CHAR (50).
RETURNCONCAT ('Hello,‘ s,'!').

 Show procedure status y show function status (retorna características de rutinas).
Ejemplo:
Create Function: CREATE FUNCTION `test’. ‘Hello`(s CHAR (20)) RETURNS CHAR (50)
RETURN CONCAT ('Hello, s,'!').

La sentencia call (invoca un procedimiento definido previamente con create procedure).
Ejemplo:
CALL sp_name (parameter).

Sentencia compuesta begin... end(se utiliza para escribir sentencias compuestas que pueden aparecer en el interior de procedimientos almacenados y triggers, una sentencia compuesta puede contener múltiples sentencias).
Ejemplo:
[etiqueta_ inicio:] BEGIN
[lista_sentencias]
END [etiqueta_fin]

Sentencia declare (se usa para definir varios iconos locales de una rutina)

Variables en procedimientos almacenados
Declararlas variables locales se usa declare (): se usa para declarar variables locales. Para declarar un valor por defecto para la variable, coloque una cláusula default, si esta clausula no esta el valor inicial es null.
Ejemplo:
DECLARE var_name .. type [DEFAULT value]

Sentencia set para variables: mezcla distintos tipos de variables.
Ejemplo:
SET var_name = expr [ var_name = expr]...
La...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Que es una base de datos y tipos de base de datos
  • Bases de datos y usuarios de bases de datos
  • Base De Datos
  • Base De Datos
  • Base de datos
  • Base De Datos
  • Base de datos
  • Bases de datos

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS