Sql server SQL Server存储过程无法通过codesmith运行

Sql server SQL Server存储过程无法通过codesmith运行,sql-server,sql-server-2008,stored-procedures,codesmith,Sql Server,Sql Server 2008,Stored Procedures,Codesmith,我得到了这个脚本,它工作正常,执行存储过程时输出正确。但是当我通过codesmith使用它时,它不起作用,当我执行生成输出时,存储过程将返回一个整数而不是结果 以下是导致问题的部分: SELECT * INTO #UsersConversations FROM Conversations c WHERE c.pid IN (SELECT DISTINCT ConvID FROM ConversationUsers WHERE UserID = @UserId) 我使用的是SQL Se

我得到了这个脚本,它工作正常,执行存储过程时输出正确。但是当我通过codesmith使用它时,它不起作用,当我执行
生成输出
时,存储过程将返回一个整数而不是结果

以下是导致问题的部分:

SELECT *
INTO #UsersConversations
FROM Conversations c 
WHERE c.pid IN
    (SELECT DISTINCT ConvID FROM ConversationUsers WHERE UserID = @UserId)

我使用的是SQL Server 2008,CodeSmith v4,我为CodeSmith工具工作。下面将描述您遇到的问题以及如何解决该问题。

旁注:在
IN()
表达式中使用的查询中,不需要使用
DISTINCT
。充其量,这是多余的。在最坏的情况下,服务器可能会在计算()中的
IN
表达式之前实际执行使结果集不同的工作。(我相当肯定优化器足够聪明,可以删除它,但为什么要冒险呢?)在我的例子中,distinct对如此严重的问题没有任何影响。我添加它是为了解决这个问题。不管怎么说,无论有没有明显的区别,行为都是一样的。不管怎样,我还是移动了它。这真的很有帮助,很棒的帖子,非常感谢:)它确实帮助我解决了这个问题..链接不再有效。我有一个帐户并已登录。可能论坛已经关闭了?社区网站已经被删除,因为它已经过时了。生成器在不执行存储过程的情况下查看返回的元数据。您需要将FMT设置为off并使用null参数执行存储过程,如下所示:您得到结果了吗?