Как сохранить тип данных SQL при использовании неподготовленных операторов mysqli

0

Я хотел бы использовать незаготовленные заявления, используя mysqli в PHP, и сохранить тип данных SQL.

Сравнительная таблица на этой странице на php.net предполагает, что это можно сделать:

Результирующие установленные значения Типы данных SQL

Подготовленное выражение: сохраняется при извлечении

Неподготовленный оператор: преобразован в строку или сохраняется при извлечении

Что означает выборка?

В настоящее время в коде, таком как следующие значения столбца, все строки. Есть ли способ сохранить тип данных без использования подготовленных операторов?

$conn = new mysqli('db_host', 'db_username', 'db_password', 'db_name');
$conn->set_charset('db_charset');
$result = $conn->query($sql, MYSQLI_USE_RESULT);
$row = $result->fetch_assoc();

NB. небуферизованный запрос

Теги:

1 ответ

0

С тех пор я нашел вариант mysqli MYSQLI_OPT_INT_AND_FLOAT_NATIVE который преобразует числовые столбцы в int или float (boolean columns становятся int).

Я не уверен, что это то, о чем упоминалось в документации php.net, или если есть другой метод.

Пример:

$conn->options(MYSQLI_OPT_INT_AND_FLOAT_NATIVE, 1);

Ещё вопросы

Сообщество Overcoder
Наверх
Меню