2011-03-27 50 views
1

是否有在T-SQL任何类似于一个列表数据结构?基本上我做的工作和所取得的每一个变化,我想记下该项目以电子邮件的形式(msdb.dbo.sp_send_dbmail)包括。T-SQL数据类型,类似于列出

这可能是一个项目,或500,要看是什么标准相匹配。肯定会有比追加变量更好的东西吗?

谢谢。正如你指出

回答

3

你可以使用一个表变量:

declare @list table (OpName varchar(50), OpStartTime DateTime) 

... do ops here ... 

declare @mailbody varchar(max) 
select @mailbody = isnull(@mailbody,'') + 
      OpName + ' ' + convert('varchar(12), OpStartTime, 111) + 
      char(13) + char(10) 
from @list 
order by 
     OpStartTime 
+0

你的意思是一个变量附加按OP的问题...? – gbn 2011-03-27 10:45:19

+0

这不追加,这是从表中直接分配。谢谢Andomar,这与我想我会得到的类似。干杯。 – Sam 2011-03-27 11:00:43

+0

@Sam - 这种字符串连接技术本质上是通过一行一行一次地工作,并且每行都追加到变量中,所以我可以看到gbn的点。你仍然在做字符串连接,但现在也插入到表中。 – 2011-03-27 13:10:54

1

号追加的变量。

A “列表” 通常会在关系结构中举行,无论是表或者一些XML

+0

是在T-SQL字符串(即TEXT )可变吗? – Sam 2011-03-27 10:38:03