分享
 
 
 

在SQL Server数据库中实现数据的转移

王朝mssql·作者佚名  2008-06-01
窄屏简体版  字體: |||超大  

以SQL Server中的Northwind示范数据库为例,利用DTS设计器,进行数据的转移。

转移任务的步骤:

◆1. 新建目的数据库NOrthwind_DTS

◆2. 激活DTS设计器

在Enterprise Manager上右击数据转换服务图表->新建包,将弹出一个新的窗口。

◆3. 创建数据源与目的地

在第2步弹出的新窗口右侧工具栏中找到Microsoft OLE DB Provider for SQL Server图标,单击,并在弹出的对话框的新建链接栏输入Northwind,在数据库(B)的下拉列表中选取Northwind选项。其他默认设置,确定。然后,以同样的方法创建数据目的地,命名为Northwind_WH,其中数据库(B)下拉列表选项中选取 Northwind_WH选项。

◆4. 转移事实表

首先创建转换数据任务:先单击Northwind图标,然后按住ctrl键再单击Northwind_WH图标,即同时选中第3步创建出来的Northwind图标和Northwind_WH图标,然后在工具栏上找到“转换数据任务”工具按钮,单击即可以创建一个从Northwind数据源指向Northwind_WH数据目的地的指针,我们可以新建一个批注文本框,为这个指针命名“Sales事实表转换数据任务”。

设置数据转换任务:双击Sales事实表的转换数据任务指针,在弹出的属性对话框中单击【源】标签,在【描述(D):】中输入“Sales事实表转换数据任务”,然后选中【SQL查询(S):】单选按钮,并输入一下语句:

select e.EmployeeID, p.ProductID, s.SupplierID,

c.CustomerID, o.OrderDate, od.UnitPrice,

Od.Quantity, od.Discount

from Orders o,[Order Details] od, Employees e,

Products p, Suppliers s, Customers c

where (o.OrderID = od.OrderID) and

(o.EmployeeID = e.EmployeeID) and

(o.CustomerID = c.CustomerID) and

(od.ProductId = p.ProductID) and

(p.SupplierID = s.SupplierID);

我们可以点击“分析查询”按钮,检查SQL语句的语法是否正确;也可以“预览”查询结果,以检验数据是否正确;单击“生成查询”即可激活查询设计器,根据需要对刚才的SQL语句进行修改。

单击【目的】标签,然后单击“创建”按钮,即可激活一个包含SQL的对话框,我们将语句中的“新建表”修改成我们需要的表名“Sales”,并在最后添加一行:[Total] money NOT NULL。这时,DTS设计器已经为我们在Northwind_WH数据中新建了表Sales。

单击【转换】标签,可以看到DTS设计器为我们指定的字段之间的转换任务。我们希望将UnitPrice*(1.0-Discount)*Quantity存入Total字段,因此这里只需要对Total字段进行如下设置:

现在左侧的“源”中选中Quantity、UnitPrice和Discount,然后选中右侧“目的”的Total,选中之后,单击“新建”按钮,在弹出的对话框中选中ActiveX Script,点确定,将弹出转换属性对话框,点击此对话框中的“属性”按钮,激活“ActiveX脚本转换属性窗口,然后在此窗口的左侧“语言(L):”下拉列表中选中VB Script Language,修改右侧的代码如下:

Function Main()

DTSDestination("Total") =

DTSSource("UnitPrice")*DTSSource("Quantity")*(1.0-DTSSource("Discount"))

Main = DTSTransformStat_OK

End Function

在这里也可以点击“分析”按钮,以检查转换函数是否正确书写。也可以“测试”并在测试中“查看结果”。最后,一路确定返回到“转换数据任务属性”对话框。

确定并完成设置,回到第一步的主窗口。

◆5.保存DTS转换数据任务包,在保存的时候可以对此转换数据任务做一些相应的设置。

◆6.执行包。与数据转换相关的信息都存储在包之内,我们可以在适当时间执行包以将数据加载进目标数据库。包可以重复使用,可以包含一个以上的表转换任务。如果希望每个一段时间后保能够递增式的将数据加载,则可以将时间或是其他的条件一并加入包内。

现在我们来执行刚才建立好的包,将数据从Northwind加载到Northwind_WH。在转换数据任务下面的本地包目录中找到刚才建立好的包的图标,右键选取【执行包(X)】选项,按提示操作即可。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有