我在DB中有一个返回0/1的函数(不是存储过程)。如何在C#中检索此值?
ALTER function dbo.code
(@_code INT)
RETURNS INT
AS
BEGIN
DECLARE @result bt
IF EXISTS (
SELECT fld_code
FROM client.TBL_Table(NOLOCK)
WHERE code = @_code
AND used = 0
)
SET @result = 1
ELSE
SET @result = 0
RETURN @result
END
答案 0 :(得分:2)
使用以下查询创建命令
SELECT [dbo].[code] as No
然后使用SqlDataReader读取返回的值。
答案 1 :(得分:2)
这将从您的函数中获得一些返回值。确保添加:
using System.Data.SqlClient
到你的文件。
using (SqlConnection conn = new SqlConnection(yourConnectionString))
using (SqlCommand cmd = new (SqlCommand("SELECT [dbo].[code] as returnValue", conn))
{
conn.open();
var returnValue = cmd.ExecuteReader() as int;
//Do something with your value
}
有关SqlConnection
字符串的详细信息,请查看SQL Connection Strings