Я пытался сделать запрос на вставку к SQL Серверу, используя PHP PDO, но получил ошибку:
Неустранимая ошибка: Uncaught PDOException:
Строковые или двоичные данные будет усечено.
Я использую драйвер PDO для подключения и пытаюсь сделать подготовленное заявление. Мои данные для входа и пароля хранятся как двоичные в таблице базы данных, поэтому мне нужно выполнить запрос с помощью функции CONVERT
, которая выглядит следующим образом:
$status = DB::query("user",
"INSERT INTO dbo.acctable (id,password,accounttype,birthdate,email)
VALUES ((CONVERT(binary, :loginid)), (CONVERT(binary, :pass)),
:acctype, :bdate, :email)",
[
"loginid" => 'testuser',
"pass" => '123456',
"email" => "testemail@gmail.com",
"acctype" => "0",
"bdate" => "1/01/1950"
]);
Однако я могу выполнить этот запрос без каких-либо ошибок в например, * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *} * * * * * * * * * *