Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Actualizado: 17 de julio de 2006
Este ejemplo muestra cómo usar la característica MARS (Conjuntos de resultados activos múltiples). MARS permite ejecutar varios comandos en la misma conexión, aunque es posible que todavía no se devuelvan completamente al cliente todos los resultados de la ejecución de uno o más comandos.
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.
Ubicación predeterminada: unidad:\Archivos de programa\Microsoft SQL Server\90\Samples\Engine\
Data Access\ADO\MARS
Escenario
AdventureWorks Cycles desea elevar el costo estándar y el precio de lista de sus bicicletas más populares porque los precios de estas bicicletas han aumentado debido a incrementos en el costo de la pintura. El aumento de precio varía según el color de la pintura.
Lenguajes
Transact-SQL, Visual C# y Visual Basic.
Características
El ejemplo MARS usa las siguientes características de SQL Server 2005 y Microsoft .NET Framework versión 2.0:
| Área de aplicación | Características |
|---|---|
Global |
MARS, ADO.NET 2.0, procedimientos almacenados Transact-SQL |
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 descargar SQL Server Express del sitio Web de ejemplos y descargas de SQL Server.
- 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 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
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.
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.
En el símbolo del sistema, ejecute el comando siguiente para generar el archivo de clave:
sn -k SampleKey.snk
Importante: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
Compile el ejemplo con Visual Studio y el archivo de solución que se encuentra en el directorio
CS, o bien utilice la siguiente línea de comandos msbuild en una ventana del símbolo del sistema de .NET Framework o Microsoft Visual Studio 2005:msbuild /nologo /verbosity:quiet /property:Configuration=Debug CS\ MARS.sln
Ejecutar el ejemplo
Para ejecutar el ejemplo, deberá hacer lo siguiente:
Ejecutar el ejemplo
Abra la secuencia de comandos
scripts\install.sqlusando SQL Server Management Studio. Ejecute el contenido de este archivo o ejecute el siguiente comando en una ventana del símbolo del sistema:sqlcmd -E -I -i Scripts\install.sqlEn una ventana de símbolo del sistema, ubique el directorio
CS\MARS\bin\debugy ejecute el comando siguiente:mars
Eliminar el ejemplo
Para restablecer los datos modificados por este ejemplo y quitar el ejemplo, haga lo siguiente:
Eliminar el ejemplo
Abra la secuencia de comandos
Scripts\cleanup.sqlcon Management Studio. Ejecute el contenido de este archivo o ejecute el siguiente comando en una ventana del símbolo del sistema:sqlcmd -E -I -i Scripts\cleanup.sql
Comentarios
Tenga siempre en cuenta que sería más eficiente usar JOIN en una actualización o consulta del servidor en lugar de usar MARS. Por ejemplo, podría necesitar saber el identificador de pedido de venta, el identificador de cliente, el número de producto, la cantidad del pedido y la cantidad total de artículos de línea para cada registro de detalle de pedido de venta para marzo de 2004. Aunque puede escribir esta consulta con MARS, es más eficaz escribirla con JOIN, como se muestra.
SELECT SOH.SalesOrderID, SOH.CustomerID, SOD.ProductID,
SOD.OrderQty, SOD.LineTotal
FROM Sales.SalesOrderHeader as SOH
JOIN Sales.SalesOrderDetail as SOD
ON SOH.SalesOrderID = SOD.SalesOrderID
WHERE SOH.OrderDate >= CONVERT(datetime, '20040301')
AND SOH.OrderDate < CONVERT(datetime, '20040401')
ORDER BY SOH.SalesOrderID;
Historial de cambios
| Versión | Historial |
|---|---|
5 de diciembre de 2005 |
|