在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
一、DTS简介 DTS为导入导出模块,在SQL SERVER中有专门的导入导出工具
二、调用SQL SERVER导出的包 若要执行保存为COM结构化的存储文件DTS包,使用dtsrun /Ffilename /Npackage_name /Mpackage_password 若要执行保存在SQL SERVER msdb中的DTS包,使用 dtsrun /Sserver_name /Uuser_name /Ppassword /Npackage_name /Mpackage_password 若要执行保存在Meta Data Services中的DTS包,使用: dtsrun /Sserver_name /Userver_name /Ppassword /Npackage_name /Mpackage_password /Rrespository_name
例如:服务器名为server,用户名:sa,密码:test,包名:SaleToAccess,包密码:test var str:string; begin str :='exec master.dbo.xp_cmdshell "dtsrun /Sserver /Usa /Ptest /NSaleToAccess /Mtest"'; adoquery1.Close; adoquery1.Sql.Text :=str; adoquery1.Open; end;
三、利用程序直接调用DTS 1.首先在Delphi中加入Microsoft DTSPackage Object Library 2.在工程中引用DTS_TLB 3.在窗体中加入一按钮,假定在C盘下有1.mdb,2.mdb,且两库的表名与结构都相同,1.mdb中有数据,2.mdb中无数据,现要求将1.mdb的cailiao_gongying表中的数据导入到2.mdb的cailiao_gongying中去,代码实现如下: procedure TForm1.Button1Click(Sender:TObject) ;
procedure oCustomTask2_Trans_S!(oCustromTask2:DataPumpTask2); var oTransformationOld:Transformation2; oTransformation:Transformation2; begin oTransformationOld :=oCustomTask2.TransformationOld as Transformation2; oTransformation :='DirectCopyXform'; oTransformation.TransformFlags :=63; oTransformation.ForceSourceBlobsBuffered :=0; oTransformation.InMemoryBlobSize :=1048576; oTransformation.TransformPhaces :=4; oCustomTask2.Transformations.Add(oTransformation); oTransformation :=nil; oTransformationOld :=nil; end;
var opackageold:package; opackage:package2; dts_conn,dts_conn2:connection; dts_task:task; dts_customtask:customtask; dts_pumptask:datapumptask2; dts_step:step; begin opackageold:=CoPackage.Create; opackage:=opackageold as package2; dts_conn:=opackage.Connections.new('Microsoft.Jet.OLEDB.4.0'); dts_conn.ID :=1; dts_conn.DataSource:='C:\1.mdb'; dts_conn2:=opackage.Connections.new('Microsoft.Jet.OLEDB.4.0'); dts_conn2.ID :=2; dts_conn2.DataSource:='C:\2.mdb'; opackage.Connections.Add(dts_conn); opackage.Connections.Add(dts_conn2); dts_step:=opackage.Step.New; dts_task:=opackage.Task.New('DTSDataPumpTask'); dts_task.Name:='Copy Data from 1.mdb to 2.mdb'; dts_customtask:=dts_task.CustomTask; dts_pumptask:=dts_customtask as dtapumptask2; dts_pumptask.Name:='Copy Data from 1.mdb to 2.mdb'; dts_pumptask.SourceConnectionID :=1; dts_pumptask.SourceSQLStament:='select * from cailiao_gongying'; dts_pumptask.DestictionConnectionID:=2; dts_pumptask.DestictionSQLStatement:='select * from cailiao_gongying'; dts_pumptask.progressRowCount:=100; dts_pumptask.MaximumErrorCount:=0; dts_pumptask.FetchBufferSize :=1; dts_pumptask.UseFastLoad:=True; dts_pumptask.InsertComitSize:=0; dts_pumptask.ExceptionFileColumnDelimiter:='|'; dts_pumptask.ExceptionFileRowDelimiter:=#13#10; dts_pumptask.AllowIdentityInserts:=False; dts_pumptask.FirstRow:=0; dts_pumptask.LastRow:=0; dts_pumptask.FastLoadOptions:=2; dts_pumptask.ExceptionFileOptions:=1; dts_pumptask.DataPumpOptions:=0; dts_step.Name:='LowerCaseStep'; dts_step.TaskName:=dts_pumptask.Name; oCustomTask2_Trans_S1(dts_pumptask); opackage.Tasks.Add(dts_taskk); opackage.Steps.Add(dts_step); opackage.Execute; opackage.UnInitialize; end; |
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论