我有一个存储过程,用于运行查询以获取有关客户端余额的信息。它具有以下语法:
exec Client_Balance_SP @ClientList, @recentDate, @dateList
其中@ClientList是以逗号分隔的客户名称列表,即'Mary Sue,John Doe,Jimmy John',@ recentDate是'2015-05-11 00:00:00'之类的日期,以及@dateList是'2015-05-04 00:00:00,2015-04-27 00:00:00,...'
等日期列表我遇到的问题是@dateList的长度超过100个字符;我在Excel中遇到运行时错误。有没有办法解决这个问题,只允许我运行一个查询?
谢谢!
杰
答案 0 :(得分:1)
我会尝试拆分查询,使@dateList
的长度始终小于100。
我认为更优雅的解决方案是使用@datelist
的表格。
例如
exec Client_Balance_SP @ClientList, @recentDate, (Select dt from #tbl_date_list)
并且你的vba宏可以在存储过程之前从csv或excel预加载#tbl_date_list
,(如果你愿意,最后删除它)。
无论@dateList
请参阅temp tables和bulk insert将csv读入其中