SSIS 关于临时表的问题

SSIS 关于临时表的问题,第1张

对于sql server使用##的临时表相当于物理表,如果管理员不分配建表权限的话可以用这种方法,##这种全局临时表在重启数据库服务时就会被清除。

对于#的私有临时表在SSIS开发中可以把连接器的RetainSameConnection置为true来实现,然后使用该连接器的所有任务都不重新打开新连接,而保持同一连接。

但SSIS2005有BUG,在你的query string包含时,也就是要传入参数时,即使设置了RetainSameConnection为true也是不保持同一连接的,相应的#私有临时表也只在使用变量的那个任务中用完就释放了,这个我以前的项目也遇到过这个问题,建议你使用其它方法来绕过这个bug。

两种情况:

一:有数据的添加时间createdate

1、取数据仓库中max(createdate)

2、取数据源中数据,条件createdate>max(createdate)

二、有自增列id

1、取数据仓库中max(id)

2、取数据源中数据,条件id>max(id)

如需更新,根据更新时间同样

一般的增量抽取有以下四种情况

1、触发器 :对数据库性能的影响比较大。

2、时间戳:在表设计的时候,很多表没有设计时间戳,如果现在该业务表结构,那是相当的麻烦!要牵扯很多部门。

3、全表对比:效率就不敢恭维了。随着数据量的增加,。。。

4、日志对比:也是比较麻烦的。对于 mysql sqlserver 更麻烦!

经过各种折腾,终于解决了这个问题。参考了各论坛的方案,解决办法如下:

1格式化电脑,重装 *** 作系统和SQL Server 2012。因为看到有一种说法是64位的SQL Server安装的路径中有program file (X86),这个括号影响oracle客户端工作。在未重做系统前,卸载重装不能改变这个安装路径,可能是卸不干净的问题。重装的时候指定了文件路径和共享路径为c:\sqlserver,但是在运行时,发现visual studio2010的实际路径仍在program file (X86)下。

安装oracle 10g 32位客户端,再安装oracle10g 64位客户端,有顺序要求。在安装前要修改一下文件,否则系统报错,装不上。

~ 编辑安装包内文件 database/stage/prereq/db/refhostxml

增加下面节点

<OPERATING_SYSTEM>

<VERSION VALUE="61"/>

</OPERATING_SYSTEM>

~ 编辑安装包内文件 database/install/oraparamini

找到小节 在下面的第二行中增加windows版本61,如下面所示

Windows=40,50,51,52,61

至此,在net manager中建立和oracle的连接,测试是连通的,但是在SSIS中连不上。

3安装oralce 11g 32位,然后安装oracle 11g64位。安装完成后,修改注册表。

(1) For both 32-bit and 64-bit installations, open up REGEDIT and make the following registry changes:

HKEY_LOCAL_MACHINE\Software\Microsoft\MSDTC\MTxOCI

OracleOciLib contains the value ocidll

OracleSqlLib contains the value orasql11dll (old value is SQLLib80dll)

OracleXaLib contains the value oraclient11dll (old value is xa80dll)

(2) For 64-bit installations only:

HKEY_LOCAL_MACHINE\Software\Wow6432Node\Microsoft\MSDTC\MTxOCI

OracleOciLib contains the value ocidll

OracleSqlLib contains the value orasql11dll (old value is SQLLib80dll)

OracleXaLib contains the value oraclient11dll (old value is xa80dll)

(3) You must reboot your server for the changes to apply Reboot your server

参考文章 >

以上就是关于SSIS 关于临时表的问题全部的内容,包括:SSIS 关于临时表的问题、ssis 数据流源可以有哪些数据库、怎样从SSIS 连接上远方的oracle 10g数据等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10191179.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-06
下一篇 2023-05-06

发表评论

登录后才能评论

评论列表(0条)

保存