У меня проблемы с базой данных PHP и Oracle.
Когда я вставляю число в таблицу из PHP, число в таблице становится странным числом.
Например, когда я запускаю запрос из PHP для вставки числа «1» в таблицу, он не будет хранить число «1», но будет сохранять другое число, например «4294967296».
Когда я вставляю номер 10, он становится 4294967306 и так далее. Тип данных НОМЕР (10,0).
Нет проблем, когда я перехожу на другую базу данных, такую как MySQL, с той же структурой таблиц. Когда я вставляю «1», он также будет хранить «1». Также нет проблем после загрузки программы на Ubuntu Server. Oracle хранит тот же номер из PHP.
Я разрабатываю программу PHP с Laravel Framework на моем ноутбуке Windows, используя Laragon.
Я понятия не имею, в чем проблема. Это PHP, мой ноутбук, Laravel, Laragon или Oracle?
Спасибо за вашу помощь и ответ.
Я использую мутатор для приведения атрибута в строку. Потому что это будет работать, если я вставлю строку (‘0’) в таблицу вместо integer (0). Ниже представлен мутатор в модели User:
//other User model methods....
public function setActiveDirectoryAttribute($attrValue){
$this->attributes['active_directory'] = (string) $attrValue;
}
Других решений пока нет …