Этот запрос обычно работает в Windows, но в Linux он вставляет «???». Оба используют один и тот же сервер sql с ядром базы данных.
В Linux я использую freetds dblib для подключения mssql db.
Версия PHP
7.2
Варианты Freetds
client charset = UTF-8
tds version = 8.0
Запрос
$query = $pdo->prepare("INSERT INTO subjects(name,tenant_id) values(:name, :tenant_id)");
$query->bindValue('tenant_id', 1, PDO::PARAM_INT);
$query->bindValue('name', 'əəƏ', PDO::PARAM_STR);
$query->execute();
Спасибо, чувак, в конце концов я нашел проблему. Но я не могу ответить на свой вопрос. Это была проблема с dblib, я изменил ее на sqlsrv, после чего проблема была решена.
Да, на свой вопрос можно ответить. (Но, возможно, не сейчас, когда это «дубликат».)
См. «Вопросительный знак» в stackoverflow.com/questions/38363566/…