【问题标题】:BCP SQL Server: How to insert double quoted at the first ColumnBCP SQL Server:如何在第一列插入双引号
【发布时间】:2014-11-02 09:52:30
【问题描述】:

在 BCP 中,当我从表中导出数据时,我有数据

1","Engineering","Research and Development","2002-06-01 00:00:00.000"
2","Tool Design","Research and Development","2002-06-01 00:00:00.000"
3","Sales","Sales and Marketing","2002-06-01 00:00:00.000"

但我想在第一列中用双引号导出。像这样:

"1","Engineering","Research and Development","2002-06-01 00:00:00.000"
"2","Tool Design","Research and Development","2002-06-01 00:00:00.000"
"3","Sales","Sales and Marketing","2002-06-01 00:00:00.000"

这是我的格式文件:

    <?xml version="1.0"?>
<BCPFORMAT xmlns="http://schemas.microsoft.com/sqlserver/2004/bulkload/format" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
 <RECORD>
  <FIELD ID="1" xsi:type="CharTerm" TERMINATOR='\",\"' MAX_LENGTH="10"/>
  <FIELD ID="2" xsi:type="CharTerm" TERMINATOR='\",\"' MAX_LENGTH="100" COLLATION="SQL_Latin1_General_CP1_CI_AS"/>
  <FIELD ID="3" xsi:type="CharTerm" TERMINATOR='\",\"' MAX_LENGTH="100" COLLATION="SQL_Latin1_General_CP1_CI_AS"/>
  <FIELD ID="4" xsi:type="CharTerm" TERMINATOR='\"\r\n' MAX_LENGTH="10"/>
 </RECORD>
 <ROW>
  <COLUMN SOURCE="1" NAME="DepartmentID" xsi:type="SQLSMALLINT"/>
  <COLUMN SOURCE="2" NAME="Name" xsi:type="SQLNVARCHAR"/>
  <COLUMN SOURCE="3" NAME="GroupName" xsi:type="SQLNVARCHAR"/>
  <COLUMN SOURCE="4" NAME="ModifiedDate" xsi:type="SQLDATETIME"/>
 </ROW>
</BCPFORMAT>

【问题讨论】:

    标签: sql sql-server xml bcp


    【解决方案1】:

    这可能会有所帮助:

    bcp "SELECT '\"'+Field1,Field2,Field3,Field4 from DB.dbo.Table" queryout C:\temp\data.txt -t\",\" -r\"\r\n - S -T -c

    【讨论】:

    • 感谢 Reshabh 这是一个很好的解决方案,但我必须编写 SQL 查询。在这里,我有一个表名,我想在没有 SQL 查询的情况下导出这个表。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-04-24
    • 1970-01-01
    • 2015-11-11
    • 1970-01-01
    • 2019-07-20
    • 2023-03-25
    • 2013-03-24
    相关资源
    最近更新 更多