【问题标题】:bcp append a line at the end of filebcp 在文件末尾追加一行
【发布时间】:2016-07-02 17:31:34
【问题描述】:

我正在尝试使用 bcp 导出 .txt 文件:

EXEC xp_CMDSHELL 'BCP "SELECT v.ItemId
  , v.InventLocationId
  , CAST(v.AvailPhysical AS int)
FROM D_R1.dbo.vwStockOnHand AS v 
JOIN D_R1.DBO.vwProducts AS m 
ON v.ItemId = m.ITEMID 
 WHERE  NOT EXISTS 
     (SELECT 1 
      FROM D_R1.DBO.ExportExcludedFamilies AS magExport 
      WHERE magExport.REFRECID = m.FamilyRecId) 
      AND  AVAILPHYSICAL > 0 AND v.PICKFROMZ = 1 
      ORDER BY  v.InventLocationId, v.ITEMID"
      queryout "C:\temp\1.txt" -c -t"|" -T -S D_R1'

一切都好,但我需要文件中的最后一行,如“文件结束”,我无法弄清楚..

有人可以给我一个提示吗?

【问题讨论】:

  • @zundarz 在发布问题之前我已经对其进行了一些编辑,但对我来说效果很好。我只是问是否有办法在文件末尾添加一个字符串,在选择完成后...

标签: sql-server bcp


【解决方案1】:

1) 第一种解决方案

SELECT CONVERT(VARCHAR(11), v.ItemId) AS ItemId
  , v.InventLocationId
  , CAST(v.AvailPhysical AS int)
  , 1 AS Priority
FROM ...

UNION ALL

SELECT 'End of export file', NULL, NULL, 2 AS Priority

ORDER BY Priority, InventLocationId, ItemID

SELECT... ;
SELECT 'End of report' ;

SELECT... ;
PRINT 'End of report' ;

2) 第二种解决方案

 bcp "the same SQL query", ...
 echo End of export

echo command

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-08-12
    • 2013-03-21
    • 2023-03-02
    • 1970-01-01
    • 2013-10-26
    • 1970-01-01
    • 2017-10-14
    相关资源
    最近更新 更多