>백엔드 개발 >PHP 튜토리얼 >php 调用mssql 存储过程不能执行问题

php 调用mssql 存储过程不能执行问题

WBOY
WBOY원래의
2016-06-23 14:04:361238검색

存储过程不能执行还是什么情况,反正不能出现结果

require("../inc/hbmconn.php");//传入vip 姓名$name=iconv("utf-8","gb2312",$_REQUEST['name']);$startTime="2012-04-01";$endTime="2012-04-03";$procedure = mssql_init("procGetVIPConsumeDetail",$conn);mssql_bind($procedure,"@vipConsumerFilter",$name, SQLVARCHAR); mssql_bind($procedure,"@startDate",$startTime, SQLDATETIME); mssql_bind($procedure,"@endDate",$endTime, SQLDATETIME); $resource = mssql_execute($procedure);mssql_free_statement($procedure);


不能执行,不知啥情况,路过的帮忙看看


回复讨论(解决方案)

echo mssql_get_last_message();
看看有无错误信息

echo mssql_get_last_message();
看看有无错误信息

常量 SQLDATETIME 没有定义
请确认你书写的是否正确
你还可以 print_r(get_defined_constants());
看一下是否有类似的常量

最后那条错误信息的含义不太清楚,可能是日期格式不对吧

//传入vip 姓名$name=iconv("utf-8","gb2312",$_REQUEST['name']);//echo $name;$startTime="1970-01-01";$endTime=date("H-m-d");$procedure = mssql_init("procGetVIPConsumeDetail",$conn);mssql_bind($procedure,"@vipConsumerFilter",$name, SQLVARCHAR); mssql_bind($procedure,"@startDate",$startTime,  SQLVARCHAR); mssql_bind($procedure,"@endDate",$endTime,  SQLVARCHAR); $resource = mssql_execute($procedure);mssql_free_statement($procedure);



把日期也换成SQLVARCHAR 格式,莫名其妙的就好了...我那个去!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.