ExecuteSQLTask.BypassPrepare 属性

定义

获取或设置一个布尔值,该值指示在将 SQL 语句发送到关系数据库管理系统时执行 SQL 任务是否跳过语句的准备, (RDBMS) 。

public:
 property bool BypassPrepare { bool get(); void set(bool value); };
public bool BypassPrepare { get; set; }
member this.BypassPrepare : bool with get, set
Public Property BypassPrepare As Boolean

属性值

如果任务绕过 SQL 命令的准备,则为 true;如果 RDBMS 在执行前准备语句,则为 false。

实现

示例

The following example creates an ExecuteSQLTask, then shows the default settings of the properties, including the BypassPrepare, using the TaskHost. 然后,它设置某些属性的值,以显示如何设置属性值。

using System;  
using System.Collections.Generic;  
using System.Text;  
using Microsoft.SqlServer.Dts.Runtime;  
using Microsoft.SqlServer.Dts.Tasks.ExecuteSQLTask;  

namespace Microsoft.SqlServer.SSIS.Samples  
{  
    class Program  
    {  
        static void Main(string[] args)  
        {  
            Package pkg = new Package();  
            Executable exec1 = pkg.Executables.Add("STOCK:SQLTask");  
            TaskHost th = exec1 as TaskHost;  

            // List the default values of the Execute SQL task  
            // by using the Properties collection of the TaskHost.  
            Console.WriteLine("BypassPrepare          {0}", th.Properties["BypassPrepare"].GetValue(th));  
            Console.WriteLine("CodePage               {0}", th.Properties["CodePage"].GetValue(th));  
            Console.WriteLine("Connection             {0}", th.Properties["Connection"].GetValue(th));  
            Console.WriteLine("ExecutionValue         {0}", th.Properties["ExecutionValue"].GetValue(th));  
            Console.WriteLine("IsStoredProcedure      {0}", th.Properties["IsStoredProcedure"].GetValue(th));  
            Console.WriteLine("ParameterBindings      {0}", th.Properties["ParameterBindings"].GetValue(th));  
            Console.WriteLine("ResultSetBindings      {0}", th.Properties["ResultSetBindings"].GetValue(th));  
            Console.WriteLine("ResultSetType          {0}", th.Properties["ResultSetType"].GetValue(th));  
            Console.WriteLine("SqlStatementSource     {0}", th.Properties["SqlStatementSource"].GetValue(th));  
            Console.WriteLine("SqlStatementSourceType {0}", th.Properties["SqlStatementSourceType"].GetValue(th));  
            Console.WriteLine("TimeOut                {0}", th.Properties["TimeOut"].GetValue(th));  

            Console.WriteLine("--------------------------");  
            // Show how to set a property by using the TaskHost properties.  
            Variable myVar = pkg.Variables.Add("myVar", false, "User", 100);  
            th.Properties["SqlStatementSourceType"].SetValue(th, SqlStatementSourceType.Variable);  
            th.Properties["SqlStatementSource"].SetValue(th, "myVar");  
            th.Properties["ResultSetType"].SetValue(th, ResultSetType.ResultSetType_XML);  

            Console.WriteLine("New value of Source and SourceType:  {0}, {1}", th.Properties["SqlStatementSource"].GetValue(th), th.Properties["SqlStatementSourceType"].GetValue(th));  
            Console.WriteLine("New value of ResultSetType:  {0}", th.Properties["ResultSetType"].GetValue(th), th.Properties["SqlStatementSourceType"].GetValue(th));  

            Console.WriteLine();  
        }  
    }  
}  
Imports System  
Imports System.Collections.Generic  
Imports System.Text  
Imports Microsoft.SqlServer.Dts.Runtime  
Imports Microsoft.SqlServer.Dts.Tasks.ExecuteSQLTask  

Namespace Microsoft.SqlServer.SSIS.Samples  
    Class Program  
        Shared  Sub Main(ByVal args() As String)  
            Dim pkg As Package =  New Package()   
            Dim exec1 As Executable =  pkg.Executables.Add("STOCK:SQLTask")   
            Dim th As TaskHost =  exec1 as TaskHost   

            ' List the default values of the Execute SQL task  
            ' by using the Properties collection of the TaskHost.  
            Console.WriteLine("BypassPrepare          {0}", th.Properties("BypassPrepare").GetValue(th))  
            Console.WriteLine("CodePage               {0}", th.Properties("CodePage").GetValue(th))  
            Console.WriteLine("Connection             {0}", th.Properties("Connection").GetValue(th))  
            Console.WriteLine("ExecutionValue         {0}", th.Properties("ExecutionValue").GetValue(th))  
            Console.WriteLine("IsStoredProcedure      {0}", th.Properties("IsStoredProcedure").GetValue(th))  
            Console.WriteLine("ParameterBindings      {0}", th.Properties("ParameterBindings").GetValue(th))  
            Console.WriteLine("ResultSetBindings      {0}", th.Properties("ResultSetBindings").GetValue(th))  
            Console.WriteLine("ResultSetType          {0}", th.Properties("ResultSetType").GetValue(th))  
            Console.WriteLine("SqlStatementSource     {0}", th.Properties("SqlStatementSource").GetValue(th))  
            Console.WriteLine("SqlStatementSourceType {0}", th.Properties("SqlStatementSourceType").GetValue(th))  
            Console.WriteLine("TimeOut                {0}", th.Properties("TimeOut").GetValue(th))  

            Console.WriteLine("--------------------------")  
            ' Show how to set a property by using the TaskHost properties.  
            Dim myVar As Variable =  pkg.Variables.Add("myVar",False,"User",100)   
            th.Properties("SqlStatementSourceType").SetValue(th, SqlStatementSourceType.Variable)  
            th.Properties("SqlStatementSource").SetValue(th, "myVar")  
            th.Properties("ResultSetType").SetValue(th, ResultSetType.ResultSetType_XML)  

            Console.WriteLine("New value of Source and SourceType:  {0}, {1}", th.Properties("SqlStatementSource").GetValue(th), th.Properties("SqlStatementSourceType").GetValue(th))  
            Console.WriteLine("New value of ResultSetType:  {0}", th.Properties("ResultSetType").GetValue(th), th.Properties("SqlStatementSourceType").GetValue(th))  

            Console.WriteLine()  
        End Sub  
    End Class  
End Namespace  

示例输出:

BypassPrepare False

CodePage 1252

Connection

ExecutionValue

IsStoredProcedure False

ParameterBindings Microsoft.SqlServer.Dts.Tasks.ExecuteSQLTask.ParameterBindings

ResultSetBindings Microsoft.SqlServer.Dts.Tasks.ExecuteSQLTask.ResultBindings

ResultSetType 1

SqlStatementSource

SqlStatementSourceType 1

TimeOut 0

--------------------------

New value of Source and SourceType: myVar, 3

New value of ResultSetType: 4

注解

此属性提供绕过 OLE DB 连接的 prepare 命令的功能,因为 prepare 不支持某些 Transact-SQL 关键字,例如 还原。 如果设置为 true此属性,则允许命令在不准备的情况下运行。

适用于