我最常报告的数据库没有正确输入。除了一些整数和日期时间外,几乎每个字段都是CHAR字段。这可能会导致SSRS布局出现问题,因为某些字段有大量的尾随空格。
这会导致布局混乱等。我经常在脚本中删除这些字段以防止这种情况发生。
如果我创建一个通用UDF以在单个脚本中的多个字段上自动执行此操作,是否会对性能产生影响?
是一个功能RTRIM。 CAST,Convert等比其他产品更受欢迎?
答案 0 :(得分:1)
我不会做一个函数来执行此操作,只需在结果中的每个不正确类型的列上使用CONVERT()
,如下所示:
SELECT
CONVERT(int,RowInt) AS RowInt
,RTRIM(CONVERT(varchar(15),RowString)) AS RowString
,CONVERT(datetime,RowDatetime) AS RowDatetime
,CONVERT(numeric(10,4),RowNumeric) AS RowNumeric
FROM ...
这样,结果集的每一列都有正确的数据类型,SSRS会知道这一点,并可以对它们应用格式。
如果这是一个真正的慢性问题,而且你发现你正在重复CONVERT
s太多,你可能只想创建一些为你做这个的视图。只是注意观点意见。