Tworzenie pakietu programowe
The Package object is the top-poziom kontener for all other objects in an SSIS project solution. Jako kontener najwyższego poziom pakiet jest pierwszy utworzony obiekt, a kolejne obiekty są do niej dodać, a następnie uruchomiony w kontekście pakietu.Sam pakiet nie przenieść lub przekształcania danych.Pakiet zależy od zadania zawiera ono do wykonywania pracy.Zadania wykonuje większość pracy wykonanej przez pakiet i zdefiniować funkcje pakietu.Pakiet jest tworzony i wykonywane z trzech wierszy kodu, ale różnych zadań i ConnectionManager obiekty są dodawane do nadania dodatkowe funkcje pakietu. W tej sekcji opisano, jak programowo utworzyć pakiet.Nie dostarcza informacji na temat sposobów tworzenia zadania lub ConnectionManager. Te zostały opisane w sekcjach później.
Przykład
Aby napisać kod przy użyciu programu Visual Studio IDE, odwołanie do Microsoft.SqlServer.ManagedDTS.DLL jest wymagany w celu utworzenia using Instrukcja)Imports w języku Visual Basic .NET) do Microsoft.SqlServer.dts.Runtime. Poniższy przykład kodu ilustruje tworzenie pakiet puste.
using System;
using Microsoft.SqlServer.Dts.Runtime;
namespace Microsoft.SqlServer.Dts.Samples
{
class Program
{
static void Main(string[] args)
{
Package package;
package = new Package();
}
}
}
Imports Microsoft.SqlServer.Dts.Runtime
Module Module1
Sub Main()
Dim package As Package
package = New Package
End Sub
End Module
Aby skompilować i uruchomić próbki, naciśnij klawisz F5 w programie Visual Studio.Tworzenie przy użyciu języka C# kompilatora, kod CSC.exe, w wiersz polecenia, aby skompilować, użyj następujących odwołania polecenia i plików, zastępowanie <filename> z nazwą pliku CS lub .vb i nadanie jej <outputfilename> wybranych przez użytkownika.
CSC /miejsce docelowe:library/out: < outputfilename > .dll < nazwy pliku > CS /r:Microsoft.SqlServer.Managed DTS.dll"/r:System.dll
Tworzenie kodu, za pomocą kompilatora Visual Basic .NET vbc.exe, w wiersz polecenia, aby skompilować, użyj następujących poleceń i pliku odwołań.
vbc /miejsce docelowe:library/out: < outputfilename > .dll < nazwy pliku > .vb /r:Microsoft.SqlServer.Managed DTS.dll"/r:System.dll
Można również utworzyć pakiet, ładując istniejący pakiet, który został zapisany na dysku w systemie plików lub do SQL Server. Różnica polega na które Application Najpierw tworzony jest obiekt, a następnie obiekt pakiet jest wypełniany przez jedną z metod przeciążone aplikacji: LoadPackage w przypadku plików płaskich LoadFromSQLServer dla pakietów zapisane SQL Server, lub LoadFromDtsServer(String, String, IDTSEvents) dla pakietów zapisanych w systemie plików. W poniższym przykładzie ładuje istniejący pakiet z dysku, a następnie wyświetla kilka właściwości pakietu.
using System;
using Microsoft.SqlServer.Dts.Runtime;
namespace Microsoft.SqlServer.Dts.Samples
{
class ApplicationTests
{
static void Main(string[] args)
{
// The variable pkg points to the location of the
// ExecuteProcess package sample that was installed with
// the SSIS samples.
string pkg = @"C:\Program Files\Microsoft SQL Server\100\Samples\Integration Services" +
@"\Package Samples\ExecuteProcess Sample\ExecuteProcess\UsingExecuteProcess.dtsx";
Application app = new Application();
Package p = app.LoadPackage(pkg, null);
// Now that the package is loaded, we can query on
// its properties.
int n = p.Configurations.Count;
DtsProperty p2 = p.Properties["VersionGUID"];
DTSProtectionLevel pl = p.ProtectionLevel;
Console.WriteLine("Number of configurations = " + n.ToString());
Console.WriteLine("VersionGUID = " + (string)p2.GetValue(p));
Console.WriteLine("ProtectionLevel = " + pl.ToString());
Console.Read();
}
}
}
Imports Microsoft.SqlServer.Dts.Runtime
Module ApplicationTests
Sub Main()
' The variable pkg points to the location of the
' ExecuteProcess package sample that was installed with
' the SSIS samples.
Dim pkg As String = _
"C:\Program Files\Microsoft SQL Server\100\Samples\Integration Services" & _
"\Package Samples\ExecuteProcess Sample\ExecuteProcess\UsingExecuteProcess.dtsx"
Dim app As Application = New Application()
Dim p As Package = app.LoadPackage(pkg, Nothing)
' Now that the package is loaded, we can query on
' its properties.
Dim n As Integer = p.Configurations.Count
Dim p2 As DtsProperty = p.Properties("VersionGUID")
Dim pl As DTSProtectionLevel = p.ProtectionLevel
Console.WriteLine("Number of configurations = " & n.ToString())
Console.WriteLine("VersionGUID = " & CType(p2.GetValue(p), String))
Console.WriteLine("ProtectionLevel = " & pl.ToString())
Console.Read()
End Sub
End Module
Przykładowe dane wyjściowe:
Liczba konfiguracje = 2
VersionGUID = {09016682-89B8-4406-AAC9-AF1E527FF50F}
ProtectionLevel = DontSaveSensitive
|