将表格内容从一台服务器复制到另一台服务器的最快方法

时间:2012-05-16 16:19:07

标签: bcp sybase-ase

我正在寻找将一些表从一个sybase服务器(ase 12.5)复制到另一个表的最快方法。目前我正在使用bcp工具,但创建正确的bcp.fmt文件需要时间。

表具有相同的结构。每张表中大约有25K行。我要复制大约40张桌子。 我尝试为bcp使用-c参数,但导入时出错:

CSLIB Message:  - L0/O0/S0/N24/1/0:
cs_convert: cslib user api layer: common library error: The conversion/operation
 was stopped due to a syntax error in the source field.

我的标准bcp输入/输出命令:

bcp.exe SPEPL..VSoftSent out VSoftSent.csv -U%user% -P%pass% -S%srv% -c
bcp.exe SPEPL..VSoftSent in VSoftSent.csv -U%user2% -P%pass2% -S%srv2% -e import.err -c

2 个答案:

答案 0 :(得分:0)

由于您要从不同的服务器进行复制,因此可以使用BCP!

如果它在同一台服务器上会有所不同。

答案 1 :(得分:0)

您是说它是从1个Sybase ASE主机到另一个Sybase ASE主机吗?

如果您不想在文件系统上弄乱BCP或I / O,可以在目标数据库中创建一个CIS代理表,该表引用带有select语句的存储过程或源中的物理表数据库中。

然后你可以 插入目标表(col1,col2 ...) 选择   col1,col2 ...... 来自proxytablename

CIS代理是相当耗费资源的,所以我会非常小心你在这里做了多少工作。