Вот что я сделал, используя драйвер php5-sybase в Debian.Это обычный PHP, так что, вероятно, это не то, что вам нужно, но, возможно, это даст вам некоторые подсказки.Даже сделать это с помощью простого PHP было для меня на удивление сложно!
<?php
$db = mssql_connect('vm8', 'user', 'password');
mssql_select_db('myDatabase', $db);
$stmt = mssql_init('dbo.usp_square_input', $db);
$var = 9;
mssql_bind($stmt, '@x', $var, SQLINT1, false, false, 50);
$result = mssql_execute($stmt);
if ($result) {
$row = mssql_fetch_array($result, MSSQL_NUM);
echo $row[0];
mssql_free_result($result);
}
?>
ПРИМЕЧАНИЕ. Эта вещь "vm8" происходит из файла /etc/freetds/freetds.conf, и ничего не будет работать, пока я не создаюПсевдоним "vm8" там.
НЕ РАБОТАЛ (хотя не с SP все было в порядке!?!?!).
$db = mssql_connect('192.168.8.8', 'user', 'password');
Но после того, как я создал раздел "vm8" (мое собственное имя) внутри /etc/freetds/freetds.conf примерно так ...
[vm8]
host = 192.168.8.8
port = 1433
tds version = 8.0
Тогда мои хранимые процедуры сработали, как только я изменил имя хоста соединения для использования заголовка этого раздела:
$db = mssql_connect('vm8', 'user', 'password');
Вот так.
Для справки здесь был мой ИП:
CREATE PROCEDURE [dbo].[usp_square_input]
@x bigint
AS
SELECT @x * @x AS squared ;