Download - 9. Uso De Procedimientos Almacenados
Invocar procedimientos almacenados con
Microsoft ADO.NET
Descripción
Descripción de los procedimientos almacenados
Invocar procedimientos almacenados
Lección: descripción de los procedimientos almacenados
¿Qué es un procedimiento almacenado?
¿Por qué utilizar procedimientos almacenados?
Práctica: seleccionar el procedimiento almacenado correcto
¿Qué es un procedimiento almacenado?
Procedimientos comunes de datos que pueden ser invocados por múltiples aplicaciones Web
Acceso programático a una base de datos
Devolver registros
Devolver un valor
Realizar acción
ClienteCliente
SQL ServerSQL Server
FormularioWeb Form
Procedimientoalmacenado
Procedimientoalmacenado
Servidor WebServidor Web
Base datos
¿Por qué utilizar procedimientos almacenados?
Programación modular
Distribución del trabajo
Seguridad de la base de datos
Ejecución más rápida
Reduce el tráfico de red
Proporciona flexibilidad
Práctica: seleccionar el procedimiento almacenado correcto
Los estudiantes:
Decidirán, en determinados escenarios, qué tipo de procedimiento almacenado debe utilizarse
Tiempo: 5 Minutos
Lección: Invocar procedimientos almacenados
Invocar procedimientos almacenados
Demostración: invocar un procedimiento almacenado
Práctica: mostrar datos de un procedimiento almacenado
Utilizar parámetros
Pasar parámetros de entrada
Utilizar parámetros de salida
Demostración: pasar parámetros
Invocar procedimientos almacenados
Identificar el procedimiento almacenado
Configurar la propiedad SelectCommand del DataAdapter
Ejecutar el procedimiento almacenado y almacenar los registros devueltos
Dim daCategory As New SqlDataAdapter()daCategory.SelectCommand = New SqlCommand()daCategory.SelectCommand.Connection = conndaCategory.SelectCommand.CommandText = "ProductCategoryList"daCategory.SelectCommand.CommandType = CommandType.StoredProcedure
Dim daCategory As New SqlDataAdapter()daCategory.SelectCommand = New SqlCommand()daCategory.SelectCommand.Connection = conndaCategory.SelectCommand.CommandText = "ProductCategoryList"daCategory.SelectCommand.CommandType = CommandType.StoredProcedure
daCategory.Fill(ds, "Categories")daCategory.Fill(ds, "Categories")
SqlDataAdapter daCategory = new SqlDataAdapter();daCategory.SelectCommand = new SqlCommand();daCategory.SelectCommand.Connection = conn;daCategory.SelectCommand.CommandText = "ProductCategoryList";daCategory.SelectCommand.CommandType = CommandType.StoredProcedure;
SqlDataAdapter daCategory = new SqlDataAdapter();daCategory.SelectCommand = new SqlCommand();daCategory.SelectCommand.Connection = conn;daCategory.SelectCommand.CommandText = "ProductCategoryList";daCategory.SelectCommand.CommandType = CommandType.StoredProcedure;
daCategory.Fill(ds, "Categories");daCategory.Fill(ds, "Categories");
Demostración: invocar un procedimiento almacenado
Práctica: mostrar datos de un procedimiento almacenado
Los estudiantes:
Arrastrarán un procedimiento almacenado desde el Explorador de servidores a un formulario Web Form ASP.NET
Crearán un objeto DataReader para leer los datos del procedimiento almacenado
Vincularán un DataGrid al DataReader
Tiempo: 15 minutos
Utilizar parámetros
Identificar los parámetros disponibles
Input
Output
InputOutput
ReturnValue
Incluir parámetros en la colección de parámetros
o
Incluir valores de parámetros en la cadena de comando
Pasar parámetros de entrada
Crear el parámetro, establecer la dirección y el valor, agregar a la colección de parámetros
Ejecutar el procedimiento almacenado y almacenar los registros devueltos
SqlParameter param = new SqlParameter ("@Beginning_Date", SqlDbType.DateTime);param.Direction = ParameterDirection.Input;param.Value = Convert.ToDateTime
(txtStartDate.Text);da.SelectCommand.parameters.Add(param);
SqlParameter param = new SqlParameter ("@Beginning_Date", SqlDbType.DateTime);param.Direction = ParameterDirection.Input;param.Value = Convert.ToDateTime
(txtStartDate.Text);da.SelectCommand.parameters.Add(param);
ds = New DataSet();da.Fill(ds, "Products");
ds = New DataSet();da.Fill(ds, "Products");
Códigos de ejemplo
ds = New DataSet()da.Fill(ds, "Products")
ds = New DataSet()da.Fill(ds, "Products")
param = New SqlParameter _ ("@Beginning_Date", SQLDbType.DateTime)param.Direction = ParameterDirection.Inputparam.Value = CDate(txtStartDate.Text)da.SelectCommand.parameters.Add(param)
param = New SqlParameter _ ("@Beginning_Date", SQLDbType.DateTime)param.Direction = ParameterDirection.Inputparam.Value = CDate(txtStartDate.Text)da.SelectCommand.parameters.Add(param)
Utilizar parámetros de salida
Crear el parámetro, establecer dirección y añadir a la colección Parameters
Ejecutar el procedimiento almacenado y almacenar los registros devueltos
Leer los parámetros de salida
param = New SqlParameter("@ItemCount", SQLDbType.Int)param.Direction = ParameterDirection.Outputda.SelectCommand.parameters.Add(param)
param = New SqlParameter("@ItemCount", SQLDbType.Int)param.Direction = ParameterDirection.Outputda.SelectCommand.parameters.Add(param)
ds = new DataSet()da.Fill(ds)
ds = new DataSet()da.Fill(ds)
iTotal = da.parameters("@ItemCount").Value iTotal = da.parameters("@ItemCount").Value
param = new SqlParameter("@ItemCount", SqlDbType.Int);param.Direction = ParameterDirection.Output;da.SelectCommand.parameters.Add(param);
param = new SqlParameter("@ItemCount", SqlDbType.Int);param.Direction = ParameterDirection.Output;da.SelectCommand.parameters.Add(param);
ds = new DataSet();da.Fill(ds);
ds = new DataSet();da.Fill(ds);
iTotal = da.parameters("@ItemCount").Value; iTotal = da.parameters("@ItemCount").Value;
Demostración: pasar parámetros