Сохранение байта [] в varbinary (MAX) в SQL Server из Android через переполнение стека

Я использую БД SQL Server (MSSQL), таблица CUST_BIO имеет столбец CustData типа данных varbinary (MAX). Я использую приложение Android для хранения данных в этом столбце с использованием PHP.

  public function registerCust($custId, $custData)
{


$sqlString = "INSERT INTO CUST_BIO (CustId,CustData ) values (? ,? ) ; SELECT SCOPE_IDENTITY()";
$params    = array($custId,  $custData );

$stmt = sqlsrv_query($this->conn, $sqlString, $params);
if ($stmt === false) {

die(print_r(sqlsrv_errors(), true));
}

$rows = sqlsrv_has_rows($stmt);
$lastId = sqlsrv_get_field($stmt, 0);

echo "\nLast Inserted Id : " . $lastId . "\n";

}

Это дало мне ошибку:

Неявное преобразование из типа данных varchar в varbinary (max) не допускается. Используйте функцию CONVERT, чтобы выполнить этот запрос.

Итак, я изменился

линия

$params    = array($custId,  $custData );

в

$params    = array($custId, CONVERT(varbinary(MAX), $custData );

После обновления этого кода он дал мне еще одну ошибку;

Неустранимая ошибка: вызов неопределенной функции CONVERT ()

Я посылаю byte [] из Android в PHP веб-сервис и сохраняю его в $ custData переменная.

Я пытаюсь сохранить изображение в БД, на других форумах есть много предложений, которые говорят, что это неэффективный способ, но у меня есть ограничения, чтобы использовать этот способ.

Может ли кто-нибудь помочь мне решить эту проблему?

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]