【问题标题】:bcp syntax for dbname.schema.tabledbname.schema.table 的 bcp 语法
【发布时间】:2014-02-20 13:48:58
【问题描述】:

尝试在此处使用 SQL Server 2012 做一些非常简单的事情...我正在尝试按照此处找到的步骤进行操作: http://www.advancesharp.com/blog/1083/bulk-insert-with-text-qualifier-in-sql-server

我正在使用 Windows 身份验证方法。

bcp dbname.schema.Products format -c -t -f d:\test.fmt -T

dbname.schema.Products 到底是什么?

我的数据库叫[Manipulate MC BS],表叫[MASTER]

我要写以下内容吗?:

bcp [Manipulate MC BS].dbo.[MASTER] format -c -t -f d:\test.fmt -T

任何帮助都会很棒!

干杯, 卢卡斯

【问题讨论】:

    标签: sql-server-2012 bcp


    【解决方案1】:

    尝试使用引号或按照之前的建议指定 -q 参数(或两者都做,不会有任何坏处)。

    bcp "[Manipulate MC BS].dbo.[MASTER]" format -c -t -f d:\test.fmt -T
    

    【讨论】:

      【解决方案2】:

      MSDN bcp Utility

      指定包含空格或引号的标识符

      SQL Server 标识符可以包含嵌入空格和引号等字符。此类标识符必须按如下方式处理:

      • 在命令提示符处指定包含空格或引号的标识符或文件名时,请将标识符括在引号 ("") 中。

      例如,以下 bcp out 命令创建一个名为 Currency Types.dat 的数据文件:

       bcp AdventureWorks2012.Sales.Currency out "Currency Types.dat" -T -c
      

      要指定包含空格或引号的数据库名称,您必须使用 -q 选项。

      • 对于包含嵌入空格或引号的所有者、表或视图名称,您可以:

      • 指定 -q 选项,或

      • 将所有者、表或视图名称括在引号内的方括号 ([]) 中。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-01-25
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-05-09
        • 2020-02-02
        相关资源
        最近更新 更多