(PHP 4 >= 4.0.7, PHP 5, PECL odbtp >= 1.1.1)
mssql_bind — Добавляет параметр хранимой процедуре или удаленной хранимой процедуре
Эта функция УДАЛЕНА в PHP 7.0.0.
Есть следующие альтернативы:
$stmt
, string $param_name
, mixed &$var
, int $type
[, bool $is_output
= false
[, bool $is_null
= false
[, int $maxlen
= -1
]]] )Добавляет параметр хранимой процедуре или удаленной хранимой процедуре.
stmt
Подготовленный оператор, возвращаемый mssql_init().
param_name
Имя параметра в виде строки.
Замечание:
Вы должны использовать символ @, как в синтаксисе T-SQL. Подробное опеисание в разделе, посвященном mssql_execute().
var
Переменная PHP, которую вы связываете с параметром MSSQL. Она передается по ссылке, для извлечения OUTPUT и RETVAL после запуска процедуры.
type
Одна из констант: SQLTEXT
,
SQLVARCHAR
, SQLCHAR
,
SQLINT1
, SQLINT2
,
SQLINT4
, SQLBIT
,
SQLFLT4
, SQLFLT8
,
SQLFLTN
.
is_output
Определяет, что параметр является OUTPUT. Если этот параметр является OUTPUT, но вы его не обозначили таковым, то он будет считаться обычным параметром и ошибка вызвана не будет.
is_null
Определяет, имеет ли параметр значение NULL
или нет. Простая передача NULL
через
var
для этого не подходит.
maxlen
Используется с типами CHAR и VARCHAR. Вы должны указывать длину данных,
так что если параметр VARCHAR(50), то тип необходимо указать как
SQLVARCHAR
, а этот параметр как 50.
Возвращает TRUE
в случае успешного завершения или FALSE
в случае возникновения ошибки.
Пример #1 Пример mssql_bind()
<?php
// Соединяемся с MSSQL и выбираем базу
mssql_connect('KALLESPC\SQLEXPRESS', 'sa', 'phpfi');
mssql_select_db('php');
// Создаем новую хранимую процедуру
$stmt = mssql_init('NewUserRecord');
// Связываем имена полей
mssql_bind($stmt, '@username', 'Kalle', SQLVARCHAR, false, false, 60);
mssql_bind($stmt, '@name', 'Kalle', SQLVARCHAR, false, false, 60);
mssql_bind($stmt, '@age', 19, SQLINT1, false, false, 3);
// Запускаем
mssql_execute($stmt);
// Освобождаем
mssql_free_statement($stmt);
?>