2014-09-01 3 views
0

У меня возникла странная проблема sql, с которой я никогда не сталкивался, и мне не повезло в google ing. на моем сайте. при заказе продукта, пользователь должен заполнить поля с их частным идентификатором, который сохраняется в базе данныхMysql 0 удаляется при обновлении информации?

UPDATE bs_users SET passport_id = 01010101011 WHERE id=177 

, но проблема в том, что в MySQL 0 получает удалены по какой-то причине, и это результат я получаю в базе данных

http://imgur.com/h8v46Jd

тип поля VARCHAR, с лимитом 50 символов

ответ

4

Попробуйте ограждающих значения в кавычки

UPDATE bs_users SET passport_id = '01010101011' WHERE id = '177' 

Причина: 01010101011 - целое число, которое анализируется как 1010101011. Затем он преобразуется в строку, но ведущее 0 уже потеряно. Если вы хотите сохранить ведущее 0, передайте его как строку, а не целое. И спасибо за объяснение от @Joachim Isaksson

+4

В качестве пояснения '01010101011' является целым числом, которое анализируется как' 1010101011' , Затем он преобразуется в строку, но ведущее 0 уже потеряно. Если вы хотите сохранить ведущее 0, передайте его как строку, а не целое число. –

+0

Я заслуживаю потерять несколько баллов за ошибку, этот идиот, большое спасибо sir – Guram

+0

Это точно верно @JoachimIsaksson, и я обновил ответ с вашего комментария. :-) –

Смежные вопросы