AdventureWorks Cycles CLR Layer

El ejemplo AdventureWorks Cycles CLR Layer para SQL Server 2005 proporciona ciertas utilidades que forman un nivel adicional de funcionalidad sobre la base de datos de ejemplo básica AdventureWorks. La primera utilidad crea registros de contacto para varios tipos de personas involucradas en la base de datos AdventureWorks. La información de contacto se especifica usando XML y se pasa a un procedimiento almacenado basado en C#. La segunda utilidad define un tipo de datos Currency definido por el usuario utilizando C#. Este tipo de datos definido por el usuario encapsula una cantidad y una cultura que ayudan a determinar la forma correcta de representar la cantidad como valor de moneda en dicha cultura. La tercera utilidad proporciona una función de conversión de monedas que devuelve una instancia del tipo de datos Currency definido por el usuario. Si la base de datos AdventureWorks tiene una tasa de cambio de dólares estadounidenses (USD) con respecto a la moneda asociada con la referencia cultural específica, la función de conversión devuelve un tipo de datos Currency definido por el usuario con la tasa de cambio y la referencia cultural que coincide con la solicitada. En caso contrario, el tipo de datos definido por el usuario Currency se devuelve con la cantidad original, que debe estar en USD, con la referencia cultural en-us. Las utilidades también muestran cómo eliminar del Registro y registrar métodos y ensamblados de Common Language Runtime (CLR) usando Transact-SQL.

[!NOTA] Las tasas de cambio usadas en este ejemplo son ficticias y no deben usarse para transacciones financieras reales.

El directorio de instalación predeterminado es unidad:\Archivos de programa\Microsoft SQL Server\90\Samples\Engine\Programmability\CLR\AdventureWorks.

Escenario

  • Un programador necesita una manera conveniente de representar, conservar y manipular diferentes montos monetarios en diferentes monedas.
  • Un programador necesita una manera conveniente de crear nueva información de contacto para empleados, clientes individuales, clientes de la tienda y proveedores y relacionar esta información con otra información almacenada en la base de datos AdventureWorks.

Lenguajes

Transact-SQL, Visual C# y Visual Basic.

Características

El ejemplo SQLCLR Layer usa las siguientes características de SQL Server 2005.

Área de aplicación Características

Contacto

XML

Currency, ConvertCurrency

CLR UDT, función definida por el usuario (UDF) CLR

Requisitos previos

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

  • SQL Server 2005 o bien SQL Server 2005 Express Edition (SQL Server Express). Puede obtener SQL Server Express de forma gratuita desde el sitio Web de Documentación y ejemplos de SQL Server 2005 Express Edition.
  • 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 gratuitamente. Vea Instalar .NET Framework SDK.

Generar el ejemplo

Si todavía no ha creado los archivos de clave de nombre seguro, SampleKey.snk y UnsafeSampleKey.snk, siga estas instrucciones para generarlos.

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 Visual Studio 2005, Visual Studio Tools y, a continuación, haga clic en Visual Studio 2005 Command Prompt.

    O bien

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

  2. 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 a la carpeta Samples.

    [!NOTA] Para determinar la carpeta donde se encuentran los ejemplos, haga clic en Inicio, seleccione Todos los programas, Microsoft SQL Server 2005, Documentation and Tutorials y, a continuación, haga clic en Samples Directory. Si se usó la ubicación de instalación predeterminada, los ejemplos se encuentran en <system_drive>:\Archivos de programa\Microsoft SQL Server\90\Samples.

  3. En el símbolo del sistema, ejecute los comandos siguientes para generar los archivos de clave:

    sn -k SampleKey.snk

    sn -k UnsafeSampleKey.snk

    ms160866.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, deberá hacer lo siguiente:

Generar el ejemplo

  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 un comando similar al siguiente en el símbolo del sistema:

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

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

  3. Si no ha instalado 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 en la que se han instalado 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, según si ha compilado el proyecto Visual C# o el proyecto Visual Basic en SQL Server Management Studio. Ejecute la secuencia de comandos que contiene el archivo o ejecute un comando similar al siguiente en el símbolo del sistema:

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

    Esta secuencia de comandos realiza las siguientes acciones:

    • Elimina cualquier procedimiento almacenado que vaya a definirse si existe.
    • Quita el registro del ensamblado si ya existe.
    • Registra el ensamblado.
    • Registra los procedimientos almacenados CLR.

Ejecutar el ejemplo

Para ejecutar el ejemplo, deberá hacer lo siguiente:

Ejecutar el ejemplo

  1. Cargue el archivo Scripts\test.sql en Management Studio y ejecútelo. O bien, ejecute el siguiente comando en el símbolo del sistema:

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

Eliminar el ejemplo

Utilice el procedimiento siguiente para eliminar el ejemplo SQLCLR Layer:

Eliminar el ejemplo

  1. Cargue y ejecute el archivo Scripts\cleanup.sql en Management Studio. O bien, ejecute el siguiente comando en el símbolo del sistema:

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

Comentarios

El CLR para SQL Server 2005 o SQL Server 2005 Express Edition debe estar habilitado para que este ejemplo funcione correctamente.

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

Readme_Storefront

Conceptos

Ejemplos de programación de CLR

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.