• subscribe
January 10, 2000 12:00 AM

Locating DTS Packages

SQL Server Pro
InstantDoc ID #7851

You can launch a Data Transformation Services (DTS) session that moves data between two computers from a third computer, but understanding where DTS runs can be difficult. The most important thing to remember is that SQL Server stores DTS packages by default in the sysdtspackages table of Microsoft database (msdb). SQL Server stores DTS packages as binary large object (BLOB) data.

You can also save DTS packages in the Microsoft Repository or as a DTS file. DTS files are COM-structured storage files that can save multiple packages and versions. (Packages saved to SQL Server or the Repository can also save multiple versions of a package, but not multiple packages under the same package name. If you want to save multiple packages to the same DTS file, simply use different package names and the same file name when you save them.)

What's confusing is that the DTS packages run on the client in almost the same way an executable file does. The trick is figuring out which machine is the client. The following scenarios will help you understand where DTS runs.

Scenario One
You have three machines called Client, Source, and Target. From Client, the user runs a DTS package stored on Target that moves data from Source to Target. The user executes the DTS package by opening the DTS Package Designer from Client and clicking the Execute button on the package.

DTS packages are free-threaded COM objects and run almost like a program. In this case, the DTS package acts as if it were an executable file stored on Target, which acts more like a file server than a database server. The DTS package runs on Client, pulls data from Source, and moves it to Target. The package moves data over the network twice, and the Client CPU does most of the work.

Scenario Two
In this scenario, you still have three machines called Client, Source, and Target, but this time you use a different technique to execute the package. The package is still stored on Target, but you schedule the package as a Job by using SQL Agent on Target. This time the Client user simply executes the SQL Agent job that runs the package. In this case, the package runs in the context of the user account that runs SQL Agent on Target, and the package pulls data from Source to Target by using Target’s CPU processing power.



ARTICLE TOOLS

Comments
  • sanjay kumar
    8 years ago
    Apr 25, 2004

    scenario one is what i want to do. But want to give clients a vb exe. An example please.

  • Layne Baker-Zimmer
    12 years ago
    Jun 08, 2000

    Excellent.. However, how do you get a client machine to execute a DTS package without the EM? Everytime we try using DTSRun.exe on the client the process comes back with a parameter error, but we can run the exact same parameters against the server and it runs just fine.

You must log on before posting a comment.

Are you a new visitor? Register Here
  • SP1?
    I know there is a SP1 for SQL 2008 R2 available....and there is a "feature pack" as well... ...
  • SQL database mirroring
    I have SQL Server 2008 R2 Enterprise 64bit on Windows 2008 R2 Enterprise 64bit.  Each SQL Server has...
  • Dell Compellent Disk Drive
    Does anybody has experience with Dell Compellent Disk Drive? Basically, this system manages all disk...
  • Sql server performance tuning
    I need to find a tool that help me to optimize sql server,queries,improve the performance and solve ...