У меня есть хранимая процедура, написанная на T-SQL, и я хочу использовать табличную переменную.
Вот простой пример:
CREATE PROCEDURE test
AS
BEGIN
DECLARE @tempTable TABLE(
id int, data nvarchar(128)
)
INSERT INTO @tempTable (id, data)
SELECT id, data FROM otherTable
SELECT * FROM @tempTable
END
Я создаю процедуру на MS SQL Server 2008, работающую на Windows Server 2003.
Если я вызываю процедуру в MS SQL Server Management Studio (версия 10.0.2531.0), я получаю правильные результаты.
Вот моя проблема:
Если я вызываю оператор из PHPDriver , я получаю никаких результатов .
Это, кажется, имеет место всякий раз, когда я использую временные переменные таблицы ..
Вот код PHP:
$dataBaseConnectionInfo = array(
'UID' => $this->loginName,
'PWD' => $this->password,
'Database' => $this->databaseName
);
$serverHandle = sqlsrv_connect(
$this->serverAddress,
$dataBaseConnectionInfo
);
$queryResult = sqlsrv_query($serverHandle, 'EXECUTE test');
$fetchedRows = sqlsrv_fetch_array($queryResult, SQLSRV_FETCH_NUMERIC);
var_dump($fetchedRows);
Спасибо заранее за любую помощь:)