【发布时间】:2011-11-18 14:46:10
【问题描述】:
SQL可以返回字符串吗?
我有一个存储过程,这会创建一个不错的文本字符串。我是否必须将其传递到临时表中并以某种方式从 C# 中读取它,或者我可以简单地返回一个字符串
【问题讨论】:
标签: c# sql sql-server sql-server-2005
SQL可以返回字符串吗?
我有一个存储过程,这会创建一个不错的文本字符串。我是否必须将其传递到临时表中并以某种方式从 C# 中读取它,或者我可以简单地返回一个字符串
【问题讨论】:
标签: c# sql sql-server sql-server-2005
只需在存储过程的末尾添加即可:
select myString
【讨论】:
如果存储过程只返回一行,只需调用ExecuteScalar,它会返回您执行的查询的第一行和第一列。这是一篇关于该主题的MSDN 文章。
【讨论】:
我建议您使用FUNCTION 而不是STORED PROCEDURE。您可以从函数中返回表格或任何您想要的内容。
虽然有一些限制。您可以更深入地挖掘差异以查看何时使用什么。这是一个可以帮助您入门的链接:
Function vs. Stored Procedure in SQL Server
如果您仍然想使用存储过程,您可以使用 SELECT 返回单行单列结果集,或者只使用输出参数。
【讨论】:
选择“确定”
或
返回“确定”
你可以试试
【讨论】:
已通过使用 XML PATH 修复并选择为文本。
【讨论】:
我会问你为什么要从 SQL Server 返回一个字符串?有时它可能是合适的,但 SQL Server 旨在返回数据集。如果您正在查看个人价值观,您可能需要重新考虑您的架构。
带回整行。决定将其过滤到业务端的单个列(在 .NET 中)。如果您担心优化,请使用 DataReader。
【讨论】: