P painboy Unregistered / Unconfirmed GUEST, unregistred user! 2008-08-17 #1 如题。现在用的是INFORMIX 7,C/S模式的程序,只能在线访问。现在想编程将服务器的在线数据复制到INTERBASE 7,生成一本地数据,方便移动使用。数据有近70万条,我不想一条一条的INSERT,请问各位高手有何快捷高效的办法实现这目的呢?
如题。现在用的是INFORMIX 7,C/S模式的程序,只能在线访问。现在想编程将服务器的在线数据复制到INTERBASE 7,生成一本地数据,方便移动使用。数据有近70万条,我不想一条一条的INSERT,请问各位高手有何快捷高效的办法实现这目的呢?
P painboy Unregistered / Unconfirmed GUEST, unregistred user! 2008-08-19 #2 补充:INFORMIX是用ADO连接的;INTERBASE用IB控件(可改ODBC或ADO)。还望指点迷津
B ball_cao Unregistered / Unconfirmed GUEST, unregistred user! 2008-08-19 #3 可以用OpendataSource语句连接两个不同的数据库<br>http://www.delphibbs.com/keylife/iblog_show.asp?xid=101
P painboy Unregistered / Unconfirmed GUEST, unregistred user! 2008-08-20 #4 BALL_CAO,你哄我开心吧?印象中OPENDATASOURCE应该是SQL SERVER或SYBASE才支持的。在你说之前我已试过在INTERBASE里用这个方法,总出错。真的可以吗?请将SQL语句写出来看看。谢谢
BALL_CAO,你哄我开心吧?印象中OPENDATASOURCE应该是SQL SERVER或SYBASE才支持的。在你说之前我已试过在INTERBASE里用这个方法,总出错。真的可以吗?请将SQL语句写出来看看。谢谢
P painboy Unregistered / Unconfirmed GUEST, unregistred user! 2008-08-21 #6 easykoala: TBatchMove应该只支持BDE组件,我的INFORMIX一定要用ADO连接的,ODBC都不适合。再等高见。<br>难道要我放弃INTERBASE,改用MSDE?不到黄河心不死啊……
easykoala: TBatchMove应该只支持BDE组件,我的INFORMIX一定要用ADO连接的,ODBC都不适合。再等高见。<br>难道要我放弃INTERBASE,改用MSDE?不到黄河心不死啊……
B ball_cao Unregistered / Unconfirmed GUEST, unregistred user! 2008-08-22 #8 我用opendatasource做过从MSSQL到Oracle的数据迁移的<br>你可能无法找到用Opendatasource连接informix的驱动 但是想过其他办法么?<br>ps:如果想请教说话应该礼貌些。真有些不想帮你。但是作为一个有良知的知识分子,实在不忍看你无知下去啊<br><br>试试用odbc的方式访问 <br>1.配置windows的ODBC数据源: <br> 开始菜单—》程式集—》系统管理工具—》资料数据源(ODBC)—》进入配置系统DSN <br> 添加—》选择 informix 的驱动程序—》按照提示操作完成 odbc 配置,并且要保证测试成功 <br>2.配置完成后,用下面的语句应该可以访问了: <br> select * from <br> OpenRowset('MSDASQL' <br> ,'DSN=scmtest;DATABASE=acdbshop;uid=rbscm;pwd=rbscm_2004' <br> ,'select * from supply') as a <br>3.说明一下OpenRowset与Opendatasource是一个原理
我用opendatasource做过从MSSQL到Oracle的数据迁移的<br>你可能无法找到用Opendatasource连接informix的驱动 但是想过其他办法么?<br>ps:如果想请教说话应该礼貌些。真有些不想帮你。但是作为一个有良知的知识分子,实在不忍看你无知下去啊<br><br>试试用odbc的方式访问 <br>1.配置windows的ODBC数据源: <br> 开始菜单—》程式集—》系统管理工具—》资料数据源(ODBC)—》进入配置系统DSN <br> 添加—》选择 informix 的驱动程序—》按照提示操作完成 odbc 配置,并且要保证测试成功 <br>2.配置完成后,用下面的语句应该可以访问了: <br> select * from <br> OpenRowset('MSDASQL' <br> ,'DSN=scmtest;DATABASE=acdbshop;uid=rbscm;pwd=rbscm_2004' <br> ,'select * from supply') as a <br>3.说明一下OpenRowset与Opendatasource是一个原理
P painboy Unregistered / Unconfirmed GUEST, unregistred user! 2008-08-24 #9 谢谢BALL大侠的古道热肠。我知道SQL SERVER里可以用OpenDataSource或OpenRowset,用IN [ODBC]都行。而且IN [ODBC]这种方法在INFORMIX上执行没问题。<br>但我现在要在InterBase的连接里执行SQL语句,把Informix的数据倒过来。上述两种方法都无法以执行。<br>如果用TBatchMove,只能是两个都用BDE连接的数据库。用它就连不上Informix了。<br>我的理解有错吗?有何方法解决?请各位高手再赐教<br><br>李兄:DTS也是SQL SERVER的吧?
谢谢BALL大侠的古道热肠。我知道SQL SERVER里可以用OpenDataSource或OpenRowset,用IN [ODBC]都行。而且IN [ODBC]这种方法在INFORMIX上执行没问题。<br>但我现在要在InterBase的连接里执行SQL语句,把Informix的数据倒过来。上述两种方法都无法以执行。<br>如果用TBatchMove,只能是两个都用BDE连接的数据库。用它就连不上Informix了。<br>我的理解有错吗?有何方法解决?请各位高手再赐教<br><br>李兄:DTS也是SQL SERVER的吧?
W wlggslz Unregistered / Unconfirmed GUEST, unregistred user! 2008-08-24 #10 我用过oracle数据库,我是这么做的,这种方式只能是表结构完全相同才可以,首先把你要复制的表以备份的方式导出来,生成.dmp文件,如果本地存在那这张表的话,就把这张表删除,这些都可以通过自己写代码进行控制,然后在把前面生成的.dmp文件导入到本地数据库
我用过oracle数据库,我是这么做的,这种方式只能是表结构完全相同才可以,首先把你要复制的表以备份的方式导出来,生成.dmp文件,如果本地存在那这张表的话,就把这张表删除,这些都可以通过自己写代码进行控制,然后在把前面生成的.dmp文件导入到本地数据库