【问题标题】:Difference in "format" and "queryout" options available in BCPBCP 中可用的“格式”和“查询输出”选项的区别
【发布时间】:2014-04-04 05:03:21
【问题描述】:

我正在尝试在 Windows 上使用 BCP(版本 10)将数据导入 Sybase ASE 15.7(试用版)。 为此,我首先尝试使用以下命令为表格创建格式文件并得到错误:复制方向必须是“in”或“out”。 “格式”中的语法错误。

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 服务器,BCP 描述在实用程序的以下描述中显示格式和查询选项。 http://technet.microsoft.com/en-us/library/ms162802.aspx

_xCodexBlockxPlacexHolderx_谁能告诉我在 Sybase ASE 上的 BCP 中是否不支持使用“格式”选项查询和创建格式文件的选项?或者有没有办法启用这些?

我知道我们可以手动创建格式文件,但这不可行,因为我必须为 2000 个表创建格式文件。

我想知道是否有人遇到过使用 BCP 生成格式文件的类似问题,以及是否有解决此问题的解决方法。

【问题讨论】:

标签: sql-server sybase sap-ase bcp


【解决方案1】:

尽管名称相同且语法重叠,但 Sybase ASE 和 MS SQL Server 的实用程序完全不同。

Sybase ASE bcp 不支持 queryout

另外,format files for Sybase BCP 仅用于定义列数据类型,它们不用于重新排序/跳过或其他可使用 SQL Server 格式文件执行的操作。

对于 Sybase ASE,导入或导出数据不需要格式文件。仅当您未在 bcp 命令中指定 -c(字符模式)或 -n(本机模式)时才需要它们。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-01-01
    • 1970-01-01
    • 2019-02-26
    • 2020-03-05
    • 2018-05-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多