"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > ¿Cómo pueden los parámetros con valor de tabla mejorar el rendimiento del procedimiento almacenado SQL y el código de simplicidad del código?

¿Cómo pueden los parámetros con valor de tabla mejorar el rendimiento del procedimiento almacenado SQL y el código de simplicidad del código?

Publicado el 2025-02-26
Navegar:882

How Can Table-Valued Parameters Improve SQL Stored Procedure Performance and Code Simplicity?

que pasa las listas de parámetros valorados en la tabla a los procedimientos almacenados SQL

el escenario de poblar una tabla de base de datos con múltiples elementos asociados con un registro específico IS es Un desafío común en la manipulación de datos. Mientras que los enfoques tradicionales implican que pase iterativamente los valores de los parámetros o el uso de la manipulación de la cadena, hay una solución más eficiente disponible.

: Parámetros valorados en la tabla en SQL Server 2008

SQL SQL 2008 introdujo parámetros valorados en la tabla, que permiten pasar una colección de datos estructurados como parámetro a un procedimiento almacenado. Esto elimina la necesidad de manipulación de cadenas complejas o manejo de parámetros iterativos.

En el código proporcionado, el procedimiento almacenado "AddItemStoreport" se puede actualizar para aceptar un parámetro valorado en la tabla:

ALTER PROCEDURE AddItemsToReport
(
  @ReportId int,
  @Items AS ItemList -- User-defined table type
)
AS
BEGIN
  INSERT INTO ReportItem (ReportId, ItemId)
  SELECT  @ReportId,
            Id
  FROM    @Items
END

Tipo de tabla personalizado para la lista de elementos

para crear un tipo de tabla personalizada para la lista de elementos, ejecute la siguiente instrucción SQL:

CREATE TYPE ItemList AS TABLE
(
  Id int
)

Pasando el parámetro de Table Valuado de C#

en su código C#, cree una instancia del tipo de tabla personalizada:

var itemList = new ItemList();
itemList.Rows.Add(1);
itemList.Rows.Add(2);
itemList.Rows.Add(3);

Entonces, pase el parámetro valorado en la tabla al procedimiento almacenado:

dbCommand.AddInParameter(dbCommand, "Items", DbType.Object, itemList);

beneficios de la tabla Parámetros

  • El rendimiento mejorado evitando múltiples viajes redondos a la base de datos.
  • El código simplificado eliminando la necesidad de manipulación o iteración de la necesidad.
  • Security Security escribiendo fuertemente los datos de entrada.
Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3