Array Parameter (ejemplo)

Actualizado: 14 de abril de 2006

A veces resulta útil crear, actualizar o eliminar una serie de filas en una base de datos. Este objetivo puede conseguirse mediante distintos métodos. Uno de ellos es pasar una matriz de información de un cliente a un procedimiento almacenado de integración de Common Language Runtime (CLR) del servidor mediante un tipo de datos de integración definido por el usuario CLR. La naturaleza de los tipos de datos definidos por el usuario de este tipo limita el tamaño de los datos proporcionados al servidor a 8.000 bytes. Por lo tanto, este método no resulta satisfactorio para datos cuantiosos o complejos. Para obtener más información, vea el procedimiento almacenado de creación de contactos en el ejemplo AdventureWorks Cycles CLR Layer. Si los datos que se tratan son pequeños y sencillos, este método puede ser mucho más eficaz que llamar a un procedimiento almacenado para cada fila. Al pasar una matriz, el orden de los datos se conserva en las aplicaciones donde es significativo.

Este ejemplo contiene lo siguiente:

  1. El tipo de datos definido por el usuario ContactTypeNames. Este tipo contiene una lista de nombres de tipos de contacto deseados.
  2. El procedimiento almacenado usp_EnsureContactTypeNames implementado como un método de Microsoft Visual C# o Microsoft Visual Basic. Acepta una instancia del tipo de datos definido por el usuario ContactTypeNames e inserta filas nuevas en la tabla Person.ContactType para cualquier nombre de contacto que esté incluido en la instancia del tipo de datos definido por el usuario que todavía no se encuentre en la tabla.
  3. La aplicación de consola TestArrayParameter. Crea una instancia del tipo de datos definido por el usuario ContactTypeNames basada en los parámetros de línea de comandos que se pasan y luego invoca el procedimiento almacenado usp_EnsureContactTypeNames pasando la instancia de tipo de datos definido por el usuario como parámetro.

Directorio de instalación: unidad:\Archivos de programa\Microsoft SQL Server\90\Samples\Engine\Programmability\CLR\ArrayParameter\

Escenario

Jane es programadora para Adventure Works Cycles. Tiene que insertar una pequeña cantidad de filas simples en una tabla pero desea minimizar las respuestas de la base de datos.

Lenguajes

Transact-SQL, Visual C# y Visual Basic.

Características

En el ejemplo Array Parameter se usan las siguientes características de Microsoft .

Área de aplicación Características

Global

CLR, tipo de datos definido por el usuario, Transact-SQL

Requisitos previos

Antes de ejecutar este ejemplo, asegúrese de que esté instalado el siguiente software:

  • Microsoft SQL Server 2005 o bien Microsoft SQL Server 2005 Express Edition (SQL Server Express). Puede obtener SQL Server Express sin cargo desde el sitio Web.
  • La base de datos AdventureWorks incluida en SQL Server 2005, que también está disponible en el sitio Web para programadores de SQL Server.
  • Los ejemplos de SQL Server 2005 Database Engine (Motor de base de datos de SQL Server 2005). Estos ejemplos están incluidos en SQL Server 2005. Puede descargar la última versión de los ejemplos en el sitio Web para programadores de SQL Server.
  • .NET Framework SDK 2.0 o Microsoft Visual Studio 2005. Puede obtener .NET Framework SDK sin cargo. Vea Instalar .NET Framework SDK.

Generar el ejemplo

Si aún no ha creado un archivo de clave de nombre seguro, genere este archivo mediante las siguientes instrucciones.

Para generar un archivo de clave de nombre seguro

  1. Abra un símbolo del sistema de Microsoft Visual Studio 2005. Haga clic en Inicio, seleccione Todos los programas, Microsoft .NET Framework SDK 2.0 y, a continuación, haga clic en Símbolo del sistema de SDK.

    -- O bien --

    Abra un símbolo del sistema de Microsoft .NET Framework. Haga clic en Inicio, seleccione Todos los programas, Microsoft .NET Framework SDK 2.0 y, a continuación, haga clic en Símbolo del sistema de SDK.

  2. Use el comando de cambio de directorio (CD) para cambiar el directorio actual a la carpeta donde están instalados los ejemplos.

    [!NOTA] para determinar la carpeta donde se encuentran los ejemplos, haga clic en el botón Inicio, seleccione Todos los programas, Microsoft SQL Server, Documentación y tutoriales y, a continuación, haga clic en el directorio Ejemplos. Si se usó la ubicación de instalación predeterminada, los ejemplos se encontrarán en <unidadDeSistema>:\Archivos de programa\Microsoft SQL Server\100\Ejemplos.

  3. En el símbolo del sistema, ejecute el comando siguiente para generar el archivo de clave:

    sn -k SampleKey.snk

    ms160951.note(es-es,SQL.90).gifImportante:
    Para obtener más información acerca del par de claves de nombre seguro, vea el apartado sobre informes de seguridad de nombres seguros y seguridad en .NET Framework en el centro de desarrollo de .NET de MSDN.

Para generar el ejemplo Array Parameter

  1. Compile el ejemplo con Visual Studio 2005 y la solución de Visual Studio proporcionada, o mediante Microsoft MSBuild, que se incluye en .NET Framework SDK 2.0. Ejecute comandos similares al siguiente en un símbolo del sistema de .NET Framework:

    msbuild /nologo /verbosity:quiet /property:Configuration=Debug CS\ArrayParameter.sln

  2. Asegúrese de que la base de datos AdventureWorks esté instalada.

  3. Si no instaló los ejemplos de SQL Server Database Engine (Motor de base de datos de SQL Server) en la ubicación predeterminada, modifique la ruta de acceso de la parte CREATE ASSEMBLY de la secuencia de comandos que se encuentra en Scripts\InstallCS.sql para que haga referencia a la ubicación donde se instalaron los ejemplos.

  4. Si no es administrador de la instancia de SQL Server que utiliza, debe hacer que un administrador le conceda el permiso CreateAssembly para completar la instalación.

  5. Abra el archivo scripts\installCS.sql o scripts\installVB.sql, dependiendo de si ha compilado el proyecto de Visual C# o el proyecto de Visual Basic, en SQL Server Management Studio. Ejecute la secuencia de comandos que contiene el archivo o ejecute un comando similar al siguiente en una ventana de símbolo del sistema:

    sqlcmd -E -I -i Scripts\InstallCS.sql

Ejecutar el ejemplo

Para ejecutar el ejemplo Array Parameter

  1. En el símbolo del sistema, use el comando de cambio de directorio (CD) para cambiar la carpeta actual de la ventana del símbolo del sistema al directorio de ejemplo ArrayParameter. En el símbolo del sistema, ejecute el siguiente comando:

    Scripts\TestCS.cmd

Eliminar el ejemplo

Para eliminar el ejemplo Array Parameter

  1. Abra el archivo scripts\cleanup.sql en Management Studio. Ejecute la secuencia de comandos que contiene el archivo o ejecute el comando siguiente en una ventana del símbolo del sistema:

    sqlcmd -E -I -i Scripts\cleanup.sql

Comentarios

Para que este ejemplo funcione correctamente, es necesario habilitar Common Language Runtime para SQL Server 2005 o SQL Server Express.

Los ejemplos se proporcionan exclusivamente con fines formativos. No se han diseñado para utilizarse en un entorno de producción y no se han probado en ningún entorno de este tipo. Microsoft no ofrece soporte técnico para estos ejemplos. Las aplicaciones y los ensamblados de ejemplo no se deben conectar ni usar con la base de datos de SQL Server de producción ni con el servidor de informes sin el permiso del administrador del sistema.

Vea también

Tareas

AdventureWorks Cycles CLR Layer

Ayuda e información

Obtener ayuda sobre SQL Server 2005

Historial de cambios

Versión Historial

5 de diciembre de 2005

Contenido modificado:
  • Se cambiaron las instrucciones para generar un archivo de clave, incluidos el nombre y la ubicación del archivo.