ScriptTask.Execute Method
Runs the Script task.
Espacio de nombres: Microsoft.SqlServer.Dts.Tasks.ScriptTask
Ensamblado: Microsoft.SqlServer.ScriptTask (in microsoft.sqlserver.scripttask.dll)
Sintaxis
'Declaración
Public Overrides Function Execute ( _
connections As Connections, _
variableDispenser As VariableDispenser, _
events As IDTSComponentEvents, _
log As IDTSLogging, _
transaction As Object _
) As DTSExecResult
public override DTSExecResult Execute (
Connections connections,
VariableDispenser variableDispenser,
IDTSComponentEvents events,
IDTSLogging log,
Object transaction
)
public:
virtual DTSExecResult Execute (
Connections^ connections,
VariableDispenser^ variableDispenser,
IDTSComponentEvents^ events,
IDTSLogging^ log,
Object^ transaction
) override
public DTSExecResult Execute (
Connections connections,
VariableDispenser variableDispenser,
IDTSComponentEvents events,
IDTSLogging log,
Object transaction
)
public override function Execute (
connections : Connections,
variableDispenser : VariableDispenser,
events : IDTSComponentEvents,
log : IDTSLogging,
transaction : Object
) : DTSExecResult
Parámetros
- connections
A collection of connections used by the task.
- variableDispenser
A VariableDispenser object for locking variables.
- events
An object that implements the IDTSComponentEvents interface.
- log
An object that implements the IDTSLogging interface.
- transaction
The transaction object that the container is a part of. The runtime provides the transaction for the container, based on the TransactionOption property. This value can be null.
Valor devuelto
A value from the DTSExecResult enumeration.
Notas
The Execute method is inherited by task hosts and other objects from the Executable abstract class, through the DtsContainer class, and enables the inheriting objects to be run by the run-time engine. The Execute method inherited by the individual objects is not ordinarily used in code, and you should call the Execute method if you have to run tasks or containers in the package. However, the Execute method is available on individual objects if you find a unique circumstance where it is required.
The Execute method calls the Validate method implicitly before the package runs. All tasks in the package are reviewed for appropriate settings during validation, and all objects in the package are reviewed, including the package, containers, and other components in the package.
If there are no problems encountered in the validation phase that would cause the package to fail, the package object calls the Execute method for each task and object in the package.
Pass null for the transaction parameter when the TransactionOption property is false. If the TransactionOption property is true, you can pass null in the transaction parameter to indicate that the container supports transactions but does not participate.
Ejemplo
The following code example shows how to run a package that contains a BulkInsertTask after some of the task properties are set. The Bulk Insert task is just an example for this code sample; any task can be created.
using System;
using System.Collections.Generic;
using System.Text;
using Microsoft.SqlServer.Dts.Runtime;
using Microsoft.SqlServer.Dts.Tasks.BulkInsertTask
namespace Microsoft.SqlServer.SSIS.Samples
{
class Program
{
static void Main(string[] args)
{
Package p = new Package();
p.InteractiveMode = true;
p.OfflineMode = true;
Executable exec1 = pkg.Executables.Add("STOCK:BulkInsertTask");
TaskHost th = exec1 as TaskHost;
// Set the CheckConstraints and DataFileType properties.
th.Properties["CheckConstraints"].SetValue(th, true);
th.Properties["DataFileType"].SetValue(th, DTSBulkInsert_DataFileType.DTSBulkInsert_DataFileType_Native);
// Run the package that contains the task.
pkg.Execute();
// Review the results of execution.
if (taskH.ExecutionResult == DTSExecResult.Failure || taskH.ExecutionStatus == DTSExecStatus.Abend)
Console.WriteLine("Task failed or abended");
else
Console.WriteLine("Task ran successfully");
}
}
}
Imports System
Imports System.Collections.Generic
Imports System.Text
Imports Microsoft.SqlServer.Dts.Runtime
Imports Microsoft.SqlServer.Dts.Tasks.BulkInsertTask
Namespace Microsoft.SqlServer.SSIS.Samples
Class Program
Shared Sub Main(ByVal args() As String)
Dim p As Package = New Package()
p.InteractiveMode = True
p.OfflineMode = True
Dim exec1 As Executable = pkg.Executables.Add("STOCK:BulkInsertTask")
Dim th As TaskHost = exec1 as TaskHost
' Set the CheckConstraints and DataFileType properties.
th.Properties("CheckConstraints").SetValue(th, True)
th.Properties("DataFileType").SetValue(th, DTSBulkInsert_DataFileType.DTSBulkInsert_DataFileType_Native)
' Run the package that contains the task.
pkg.Execute()
' Review the results of execution.
If taskH.ExecutionResult = DTSExecResult.Failure Or taskH.ExecutionStatus = DTSExecStatus.Abend Then
Console.WriteLine("Task failed or abended")
Else
Console.WriteLine("Task ran successfully")
End If
End Sub
End Class
End Namespace
Seguridad para subprocesos
Any public static (Shared in Microsoft Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
Plataformas
Plataformas de desarrollo
Para obtener una lista de las plataformas compatibles, vea Requisitos de hardware y software para instalar SQL Server 2005.
Plataformas de destino
Para obtener una lista de las plataformas compatibles, vea Requisitos de hardware y software para instalar SQL Server 2005.
Vea también
Referencia
ScriptTask Class
ScriptTask Members
Microsoft.SqlServer.Dts.Tasks.ScriptTask Namespace