我正在尝试使用Windows上的BCP(版本10)将数据导入Sybase ASE 15.7(试用版)。 为此,我首先尝试使用以下命令为表创建格式文件并出现错误:复制方向必须为“in”或“out”。 'format'中的语法错误。
C:\Sybase\OCS-15_0\bin>bcp TEST_EMP2 format nul -f C:\test_files\TEST_EMP2.fmt -
c -T -t,
Copy direction must be either 'in' or 'out'.
Syntax Error in 'format'.
usage: bcp [[db_name.]owner.]table_name[:slice_num] [partition pname] {in | out}
[filename]
[-m maxerrors] [-f formatfile] [-e errfile] [-d discardfileprefix]
[-F firstrow] [-L lastrow] [-b batchsize]
[-n] [-c] [-t field_terminator] [-r row_terminator]
[-U username] [-P password] [-I interfaces_file] [-S server]
[-a display_charset] [-z language] [-v]
[-i input_file] [-o output_file]
[-A packet size] [-J client character set]
[-T text or image size] [-E] [-g id_start_value] [-N] [-W] [-X]
[-M LabelName LabelValue] [-labeled]
[-K keytab_file] [-R remote_server_principal] [-C]
[-V [security_options]] [-Z security_mechanism] [-Q] [-Y]
[-y sybase directory] [-x trusted.txt_file]
[--clienterr errfile] [--maxconn maximum_connections]
[--show-fi] [--hide-vcc]
[--colpasswd [[[db_name.[owner].]table_name.]column_name [password]]]
[--keypasswd [[db_name.[owner].]key_name [password]]]
[--initstring ASE initialization string] [--quoted-fname]
C:\Sybase\OCS-15_0\bin>
我在以下站点上查找了BCP实用程序选项,发现在那里没有列出创建格式文件或查询输出的选项。 http://infocenter.sybase.com/help/index.jsp?topic=/com.sybase.infocenter.dc30191.1550/html/utility/X14951.htm
bcp [[database_name.]owner.]table_name [: [ partition_id | slice_number ] |
partition partition_name] {in | out} datafile
[-f formatfile]
[-e errfile]
[-d discardfileprefix]
[-F firstrow]
[-L lastrow]
[-b batchsize]
[-m maxerrors]
[-n]
[-c]
[-t field_terminator]
[-r row_terminator]
[-U username]
[-P password]
[-I interfaces_file]
[-S server]
[-a display_charset]
[-z language]
[-A packet_size]
[-J client_charset]
[-T text_or_image_size]
[-E]
[-g id_start_value]
[-N]
[-W]
[-X]
[-M LabelName LabelValue]
[-labeled]
[-K keytab_file]
[-R remote_server_principal]
[-C]
[-V [security_options]]
[-Z security_mechanism]
[-Q]
[-Y]
[-y sybase directory]
[-x trusted.txt_file]
[--maxconn maximum_connections
[--show-fi]
[--hide-vcc]
[--colpasswd [[[database_name.[owner].table_name.]column_name
[password]]]
[--keypasswd [[database_name.[owner].]key_name [password]]]
但是对于SQL Server,BCP说明在以下实用程序说明中显示了format和queryout选项。 http://technet.microsoft.com/en-us/library/ms162802.aspx
_xCodexBlockxPlacexHolderx_任何人都可以告诉我,如果在Sybase ASE上的BCP中不支持使用“format”选项查询和创建格式文件的选项吗?或者有没有办法实现这些?
我知道我们可以手动创建格式文件,但这是不可行的,因为我必须为2000个表创建格式文件。
我想知道是否有人遇到类似的问题,使用BCP生成格式文件,如果有解决此问题的解决方法。
答案 0 :(得分:3)
尽管语法名称相同且重叠,但Sybase ASE和MS SQL Server的实用程序却完全不同。
Sybase ASE bcp
不支持queryout
。
此外,format files for Sybase BCP仅用于定义列数据类型,它们不用于重新排序/跳过或使用SQL Server格式文件可用的其他操作。
对于Sybase ASE,导入或导出数据不需要格式文件。只有在-c
命令中未指定-n
(字符模式)或bcp
(纯模式)时,才需要它们。