Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

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_query("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

like image 712
ismithuk Avatar asked Aug 05 '11 14:08

ismithuk


2 Answers

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

like image 174
scotru Avatar answered Sep 21 '22 23:09

scotru


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.

like image 28
Parris Varney Avatar answered Sep 24 '22 23:09

Parris Varney