ExecuteSQLTask.BypassPrepare Propriété
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Obtient ou définit un booléen qui indique si la tâche Exécuter SQL saute la préparation de l’instruction lors de l’envoi de l’instruction SQL au système de gestion de base de données relationnelle (SGBDR).
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
Valeur de propriété
vrai si la tâche contourne la préparation de la commande SQL ; faux si le SGBDR prépare l’énoncé avant l’exécution.
Implémente
Exemples
L’exemple suivant crée un ExecuteSQLTask, puis montre les réglages par défaut des propriétés, y compris le BypassPrepare, en utilisant le TaskHost. Il définit ensuite la valeur de certaines propriétés pour montrer comment définir les valeurs des propriétés.
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
Exemple de sortie :
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
Remarques
Cette propriété permet de contourner la commande prepare pour les connexions OLE DB, car prepare ne prend pas en charge certains mots-clés Transact-SQL, comme restore. Cette propriété, lorsqu’elle est fixée à true, permet à la commande de s’exécuter sans préparation.