开发者

mssql_execute failing with, "stored procedure execution failed"

I am currently connecting sucessfully to an SQL database sat on a Windows 2008 using the following query;

$result = mssql_q开发者_开发知识库uery("EXEC dbo.stored_procedure_name @param_level = 2");

I am basing my queries on existing code written in VB / ADO which looks like;

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

So what I attempted was the following;

$f = 2;

$stmt = mssql_init('dbo.stored_procedure_name', $mssql_link);

mssql_bind($stmt, "@param_level", $f, SQLINT4, false);

mssql_execute($stmt);

But no matter what the variation it always seems to print the print the screen the warning, "Warning: mssql_execute() [function.mssql-execute]: stored procedure execution failed in ...".

Whats the best way for me to debug the issue here? Can anyone see a clear fix to my problem?

I'm currently connecting remotely to the database from a LAMP stack.

Many Thanks Ian


Is this from a linux server using FreeTDS? If so, I wonder if this is related to TDS Version. Try tds version = 8.0 in you /etc/freetds.conf


Run the contents of the stored procedure from w/in a sql editor with the parameters hard coded in. You'll get more verbose error messages that way.


I know it's an old post but am sure it will help someone.

You have to add mssql_free_statement($stmt) after executing.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜