当前位置: 首页 > 知识库问答 >
问题:

BCP中可用的“格式”和“查询输出”选项的差异

郎鸿
2023-03-14

我试图在Windows上使用BCP(版本10)将数据导入赛贝斯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实用程序选项,发现没有列出创建格式文件或queryout的选项。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描述在下面的实用程序描述中显示了格式和查询选项。http://technet.microsoft.com/en-us/library/ms162802.aspx

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

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

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

共有1个答案

拓拔德馨
2023-03-14

尽管名称相同,语法重叠,赛贝斯ASE和MSSQLServer的实用程序是完全不同的。

Sybase ASEbcp不支持queryout

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

对于赛贝斯ASE,导入或导出数据不需要格式化文件。只有在您没有在bcp命令中指定-c(字符模式)或-n(本机模式)时,它们才是必要的。

 类似资料:
  • 问题内容: 是否有任何Java库可以接受两个字符串,并按照* nix diff命令返回格式化输出的字符串? 例如喂 和 作为输入,它会给你 与将文件传递到完全一样 我找到了这个问题,它为通用库提供了一些很好的建议,可以为您提供程序化输出,但是我想要直接的字符串结果。 我可以直接作为系统调用来调用,但是这个特定的应用程序将在UNIX和Windows上运行,而且我不确定环境是否实际可用。 问题答案:

  • 我正在用SpringDataJPA开发一个SpringBoot应用程序。我正在使用一个定制的JPQL查询来按某个字段分组并获取计数。以下是我的存储库方法。 其工作和结果如下所示: 但是,我希望我的Restendpoint以如下格式的输出响应 我怎样才能做到这一点?

  • 我有一个名为TEST的表,列名为col1、col2、col3、col4。。。。。。。。。。所以,从信息模式来看。列我将获得有关此表对象的详细信息。 现在,我想通过从信息_模式中提供列名称,从测试表中构建一个select查询。柱。像这样,从information_schema中选择column_name。表_name='TEST'中的列。这会回来的 col1 col2 col3 我想在selectq

  • 本文向大家介绍Python中的通用输出格式,包括了Python中的通用输出格式的使用技巧和注意事项,需要的朋友参考一下 在python中打印处理某些数据的结果时,我们可能需要以吸引人的格式或一定的数学精度输出它们。在本文中,我们将看到用于输出结果的不同选项。 使用格式 在这种方法中,我们使用称为format的内置函数。我们将{}用作将由格式提供的值的占位符。默认情况下,位置将使用格式函数中相同的值

  • 本文向大家介绍对python的输出和输出格式详解,包括了对python的输出和输出格式详解的使用技巧和注意事项,需要的朋友参考一下 输出 1. 普通的输出 用print()在括号中加上字符串,就可以向屏幕上输出指定的文字。比如输出'hello, world',用代码实现如下: print()函数也可以接受多个字符串,用逗号“,”隔开,就可以连成一串输出: print()会依次打印每个字符串,遇到逗

  • 这里有一个名为的小本体,由Protégé创建,其中我有类、、、和个体()、()和(也是)。在本体论中,我只声明。 当我在Protégé的DL Query选项卡中请求的实例时,我得到的是(它是,因此是,因此是)。 但当我编写以下SPARQ查询时: 我没有任何例子。当我将替换为时,结果是相同的。只有当我用替换它时,我才会得到所需的结果。 为什么DL查询做推断(允许我获得作为类的实例),而不是SPARQ