我目前使用以下查询成功连接到Windows 2008上的SQL数据库;
$result = mssql_query("EXEC dbo.stored_procedure_name @param_level = 2");
我的查询基于用VB / ADO编写的现有代码,看起来像;
If level = "" Then level = 1
cmdTT.ActiveConnection = connStrTest1
set objParam=cmdTT.CreateParameter("@param_level", adInteger, adParamInput, 4, level)
cmdTT.Parameters.Append objParam
set rsTT = cmdTT.Execute
所以我尝试的是以下内容;
$f = 2;
$stmt = mssql_init('dbo.stored_procedure_name', $mssql_link);
mssql_bind($stmt, "@param_level", $f, SQLINT4, false);
mssql_execute($stmt);
但无论变化如何,似乎总是打印出屏幕上的警告,“警告:mssql_execute()[function.mssql-execute]:存储过程执行失败…”.
什么是我在这里调试问题的最佳方式?任何人都可以看到我的问题的明确解决方案?
我目前正在从LAMP堆栈远程连接到数据库.
非常感谢
伊恩
解决方法:
这是来自使用FreeTDS的Linux服务器吗?如果是这样,我想知道这是否与TDS版本有关.在/etc/freetds.conf中尝试tds version = 8.0