MySQL случайным образом вставляет строку как десятичное значение в столбец VarcharMySql

Форум по Mysql
Ответить
Anonymous
 MySQL случайным образом вставляет строку как десятичное значение в столбец Varchar

Сообщение Anonymous »

Мы столкнулись с довольно странным поведением, которое очень трудно воспроизвести. При введении конкретных строк , которые напоминают научную нотацию в столбце Varchar, он будет вставлен как 65 из 9, что указывает на переполнение, что означает, что наша строка случайным образом вставляется как десятичный большой. Другая странная часть этого заключается в том, что даже с той же строкой поведение изменяется. Большую часть времени он будет вставлен должным образом, но в некоторых случаях та же самая строка будет вставлена ​​как 99999999999999999999999999999999999999999999999999999999999999999999999999999 . > < Br />

Код: Выделить всё

4840e430eac9f22a5e8609a1c95faaeb8c921f66e24e55cf839a00eb35790c00< /code>

2e540795-afe5-4644-a3d0-2aaae007c76e< /code> < /p>
Эти значения вставлены в столбцы, которые были созданы с любым

`columnName` varchar(510) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL< /code>

or

`columnName` varchar(1022) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL

Мы определили, что проблема находится на стороне MySQL, а не Laravel или ProxySQL, так как запрос заканчивается на MySQL, как эта вставка в `Таблица 1` (` ruelevantColumn` , ‘ColumnName`,` uuid`) Значения ('somestring', '4840e430EAC9F22A5E8609A1C95FAAEB8C921F66E24E55CF839A00EB35790C00' /code> < /p>
Мы хотели бы Определите, что вызывает такое поведение и как его можно предотвратить. < /p>
Используется стек: < /p>

[*] laravel 11 + octane (строго Режим включен в конфигурации)
[*] proxysysql 2.7.1
[*] aws rds mysql версия: 8.0.35

Laravel начинает сеанс со следующими параметрами

Код: Выделить всё

SET NAMES 'utf8mb4' COLLATE 'utf8mb4_unicode_ci', time_zone='+00:00', SESSION sql_mode='ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION'


Подробнее здесь: https://stackoverflow.com/questions/794 ... har-column
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «MySql»