我将此函数存储在我的SQL SERVER DATABASE
中CREATE FUNCTION [dbo].[fn_md5] (@data VARCHAR(10), @data2 VARCHAR(10))
RETURNS BINARY(16) AS
BEGIN
DECLARE @hash BINARY(16)
EXEC master.dbo.XP_MD5_EncodeKeyVal @data, @data2, @hash OUT
RETURN @hash
END
为了获得我需要的价值,我可以像这样执行:[dbo].[fn_md5]('data1','data2')
我是如何在php中使用pdo执行此操作的?
如果我使用
$exc_line = $db->prepare("exec [dbo].[fn_md5]('data1','data2')");
$exc_line->execute();
$exc_line_data = $exc_line->fetch();
我没有结果......
答案 0 :(得分:2)
要解决问题,我们只需编译答案。
由SELECT
语句执行的存储函数。存储过程 - 按EXEC
声明,docs。
所以使用这个:
SELECT [dbo].[fn_md5]('data1','data2')