REVISIÓN: La instrucción de consulta dinámica aparece en el plan de ejecución de consulta de un procedimiento almacenado cifrado

Seleccione idioma Seleccione idioma
Id. de artículo: 825884 - Ver los productos a los que se aplica este artículo
Expandir todo | Contraer todo

En esta página

Síntomas

Cuando ejecuta un procedimiento almacenado cifrado que contiene una consulta dinámica y ha activado la opción SET STATISTICS PROFILE , pueden aparecer la instrucción de consulta dinámica o instrucciones en el plan de ejecución del procedimiento almacenado cifrado.

Nota En el Analizador de consultas SQL, activar la opción de Mostrar Plan de ejecución en el menú consulta para ver el plan de ejecución que genera el procedimiento almacenado cifrado.

Solución

Para evitar este problema, incluya la instrucción de Transact-SQL SET SHOWPLAN_ALL ON o la instrucción de Transact-SQL de SET SHOWPLAN_TEXT ON al ejecutar un procedimiento almacenado cifrado que contiene una consulta dinámica si ha activado la opción SET STATISTICS PROFILE .

Por ejemplo, utilizar las siguientes instrucciones Transact-SQL para evitar este problema.
SET STATISTICS PROFILE ON 
GO

SET SHOWPLAN_ALL ON
GO

--  Run the encrypted stored procedure that contains dynamic SQL statements
EXEC sp_EncryptedStoredProc 
GO

Solución

Información de Service Pack

Para resolver este problema, consiga el Service Pack más reciente para Microsoft SQL Server 2000. Para obtener información adicional, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
290211Cómo obtener el Service Pack más reciente de SQL Server 2000

Información de revisiones

La versión en inglés de este hotfix tiene los atributos de archivo enumerados en la siguiente tabla u otros posteriores. Las fechas y horas de estos archivos aparecen en la hora universal coordinada (UTC). La información de los archivos se convertirá a la hora local cuando la vea. Para averiguar la diferencia entre hora UTC y la hora local, utilice la ficha zona horaria de la herramienta fecha y hora en el panel de control.
   Date         Time   Version        Size        File name
   -------------------------------------------------------------------
   31-May-2003  18:45  2000.80.818.0      78,400  Console.exe
   25-Jun-2003  01:01  2000.80.818.0      33,340  Dbmslpcn.dll
   25-Apr-2003  02:12                    786,432  Distmdl.ldf
   25-Apr-2003  02:12                  2,359,296  Distmdl.mdf
   30-Jan-2003  01:55                        180  Drop_repl_hotfix.sql
   23-Jun-2003  22:40  2000.80.837.0   1,557,052  Dtsui.dll
   23-Jun-2003  22:40  2000.80.837.0     639,552  Dtswiz.dll
   24-Apr-2003  02:51                    747,927  Instdist.sql
   03-May-2003  01:56                      1,581  Inst_repl_hotfix.sql
   08-Feb-2003  06:40  2000.80.765.0      90,692  Msgprox.dll
   01-Apr-2003  02:07                      1,873  Odsole.sql
   05-Apr-2003  01:46  2000.80.800.0      62,024  Odsole70.dll
   07-May-2003  20:41  2000.80.819.0      25,144  Opends60.dll
   07-May-2003  18:47                    132,096  Opends60.pdb
   02-Apr-2003  21:48  2000.80.796.0      57,904  Osql.exe
   02-Apr-2003  23:15  2000.80.797.0     279,104  Pfutil80.dll
   22-May-2003  22:57                     19,195  Qfe469571.sql
   12-Jun-2003  16:37                  1,083,989  Replmerg.sql
   04-Apr-2003  21:53  2000.80.798.0     221,768  Replprov.dll
   08-Feb-2003  06:40  2000.80.765.0     307,784  Replrec.dll
   05-May-2003  00:05                  1,085,874  Replsys.sql
   01-Jun-2003  01:01  2000.80.818.0     492,096  Semobj.dll
   31-May-2003  18:27  2000.80.818.0     172,032  Semobj.rll
   29-May-2003  00:29                    115,944  Sp3_serv_uni.sql
   01-Jun-2003  01:01  2000.80.818.0   4,215,360  Sqldmo.dll
   07-Apr-2003  17:44                     25,172  Sqldumper.exe
   19-Mar-2003  18:20  2000.80.789.0      28,672  Sqlevn70.rll
   02-Jul-2003  00:18  2000.80.834.0     180,736  Sqlmap70.dll
   08-Feb-2003  06:40  2000.80.765.0      57,920  Sqlrepss.dll
   23-Jun-2003  22:40  2000.80.837.0   7,553,105  Sqlservr.exe
   23-Jun-2003  22:40                 12,747,776  Sqlservr.pdb
   08-Feb-2003  06:40  2000.80.765.0      45,644  Sqlvdi.dll
   25-Jun-2003  01:01  2000.80.818.0      33,340  Ssmslpcn.dll
   01-Jun-2003  01:01  2000.80.818.0      82,492  Ssnetlib.dll
   01-Jun-2003  01:01  2000.80.818.0      25,148  Ssnmpn70.dll
   01-Jun-2003  01:01  2000.80.818.0     158,240  Svrnetcn.dll
   31-May-2003  18:59  2000.80.818.0      76,416  Svrnetcn.exe
   30-Apr-2003  23:52  2000.80.816.0      45,132  Ums.dll
   30-Apr-2003  23:52                    132,096  Ums.pdb
   02-Jul-2003  00:19  2000.80.834.0      98,816  Xpweb70.dll
Nota Debido a la interdependencia entre archivos, el más reciente revisión o característica que contiene estos archivos quizás contenga también archivos adicionales.

Estado

Microsoft ha confirmado que se trata de un problema de los productos de Microsoft enumerados en la sección "La información de este artículo se refiere a".Este problema se corrigió por primera vez en Pack 4 de Microsoft SQL Server 2000.

Más información

Pasos para reproducir el comportamiento

  1. Inicie Analizador de consultas SQL y, a continuación, conéctese a SQL Server base de datos.
  2. Ejecute la siguiente instrucción de Transact-SQL en el Analizador de consultas SQL para crear un procedimiento almacenado cifrado.
    CREATE PROCEDURE sp_EncryptedStoredProc 
    WITH ENCRYPTION AS 
    BEGIN 
    	--  Standard SQL Statement
    	SELECT GETDATE()
    
    	--  Dynamic SQL Statement
    	EXEC('SELECT @@VERSION')
    END
  3. Activar la opción SET STATISTICS PROFILE y ejecute el procedimiento almacenado cifrado que creó en el paso 2. Para ello, ejecute la siguiente instrucción Transact-SQL
    SET STATISTICS PROFILE ON 
    GO
    EXEC sp_EncryptedStoredProc
    GO
    instrucciones.
  4. Observe la instrucción Transact-SQL dinámica instrucción que aparece en la columna StmtText en los resultados de panel. La columna StmtText aparece en el formato de texto sin cifrar. Sin embargo, se cifra la instrucción de Transact-SQL estándar.
Para obtener información adicional sobre la terminología que se utiliza para describir las actualizaciones de producto de Microsoft, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
824684Descripción de la terminología estándar utilizada para describir las actualizaciones de software de Microsoft

Propiedades

Id. de artículo: 825884 - Última revisión: viernes, 02 de noviembre de 2007 - Versión: 2.2
La información de este artículo se refiere a:
  • Microsoft SQL Server 2000 Developer Edition
  • Microsoft SQL Server 2000 Standard Edition
  • Microsoft SQL Server 2000 Enterprise Edition
  • Microsoft SQL Server 2000 Personal Edition
  • Microsoft SQL Server 2000 Workgroup Edition
  • Microsoft SQL Server 2000 Desktop Engine (Windows)
  • Microsoft SQL Server 2000 Enterprise Edition 64-bit
Palabras clave: 
kbmt kbqfe kbstoredproc kbtsql kbdatabase kbdynamic kbsqlserv2000presp4fix kbfix kbbug KB825884 KbMtes
Traducción automática
IMPORTANTE: Este artículo ha sido traducido por un software de traducción automática de Microsoft (http://support.microsoft.com/gp/mtdetails) en lugar de un traductor humano. Microsoft le ofrece artículos traducidos por un traductor humano y artículos traducidos automáticamente para que tenga acceso en su propio idioma a todos los artículos de nuestra base de conocimientos (Knowledge Base). Sin embargo, los artículos traducidos automáticamente pueden contener errores en el vocabulario, la sintaxis o la gramática, como los que un extranjero podría cometer al hablar el idioma. Microsoft no se hace responsable de cualquier imprecisión, error o daño ocasionado por una mala traducción del contenido o como consecuencia de su utilización por nuestros clientes. Microsoft suele actualizar el software de traducción frecuentemente.
Haga clic aquí para ver el artículo original (en inglés): 825884

Enviar comentarios

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com