1

我有以下打印语句,它打印了一些详细信息,但没有正确标记,看起来很糟糕。有什么办法可以以标签格式打印它们,以便它们都在行尾的同一个地方相遇。

Print'ByLineID: '+ Convert (varchar,@bylineID,1 )+' , '+ Convert(varchar,@Count,1)+ ' matching records found, '+ Convert(varchar,@@rowcount,1)+' updated.'  

最终结果:

ByLineID: 119952    , 168 matching records found, 0 updated.
ByLineID: 93979 , 56 matching records found, 0 updated.
ByLineID: 266021    , 45 matching records found, 0 updated.
ByLineID: 105976    , 44 matching records found, 0 updated.
ByLineID: 97525 , 40 matching records found, 0 updated.
ByLineID: 94138 , 39 matching records found, 0 updated.
ByLineID: 88967 , 37 matching records found, 0 updated.
4

2 回答 2

4
Print
      'ByLineID: '+ 
      Convert (varchar,@bylineID,1 ) + char(9) + ' , ' +
      Convert(varchar,@Count,1)  + char(9) +
      ' matching records found, ' +
      Convert(varchar,@@rowcount,1) + char(9) +' updated.'

添加一些制表符?

于 2013-05-02T15:25:39.807 回答
0

首先,没有长度的 CONVERT VARCHAR 是个坏主意,你应该尝试Convert (varchar(10), @bylineID).

此外,如果这些信息对您很重要,您可以考虑创建一个日志表,或者至少是临时日志表来存储这些信息,并从日志表中选择以获得更好的输出。

CREATE TABLE #logmsg
 ( id INT Identity (1,1)
 , ByLineID VARCHAR(10)
 , RecordMatch INT
 , RecordUpdted INT
 , CreateDate DateTime DEFAULT(GETDATE())) 
于 2013-05-02T15:29:53.737 回答