MySQL 5.0.4x/i386
вопрос наверное элементарный, но как-то лишь сейчас с ним столкнулся и явного ответа в документации не нашёл :-/
вопрос: при вставке целочисленного значения в таблицу - например UNSIGNED INTEGER - происходит ли автоматическая конвертация данных запроса в тот или иной порядок байт - big/little - или нет?
история: вставляю в базу голый 4х байтный IPv4 адрес в поле типа UNSIGNED INTEGER через prepared statement и хочу его после смотреть SELECT-ом в человечем виде a'la SELECT INET_NTOA(ip) FROM foo;
документация на INET_NTOA() не говорит ничего, на INET_ATON() говорит:
--- cut ---
INET_ATON(expr)
Given the dotted-quad representation of a network address as a string, returns an integer that represents the numeric value of the address. Addresses may be 4- or 8-byte addresses.
mysql> SELECT INET_ATON('209.207.224.40');
-> 3520061480
The generated number is always in network byte order. For the example just shown, the number is calculated as 209×2563 + 207×2562 + 224×256 + 40.
--- cut ---
..i.e. я так понимаю, что обе функции предполагают, что целочисленный адрес в базе должен храниться в сетевом порядке. прекрасно. по [моей] идее я так и делаю: подготавливаю выражение, назначаю параметры, в качестве значения поля передаю адрес как unsigned long в сетевом порядке дабы они в нём же и сохранились в базе как этого требует INET_ATON(). все работает на ура за исключением того, что в базе после INSERT-а данные сохраняются в перевёрнутом виде :-/
такое ощущение, что или библиотека клиента или база [что навряд ли] при вставке сама переворачивает значение ожидая при этом, что клиент всегда будет передавать целочисленные параметры выражения в host order.
в принципе, это было бы вполне логично, но явного подтверждения/утверждения в документации я не нашёл. so вопрос: так ли это?
// wbr
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум Netgear wna320 - помогите восстановить прошивку (2019)
- Форум MySQL тип данных для пасса (2013)
- Форум DB Manager (типа EMS MySQL)? (2006)
- Форум MsSQL -> MySQL тип данных bit (2005)
- Форум Типы установки, и в чем разница - MYSQL (2015)
- Форум Типы (2007)
- Форум MySQL--->MySQL (2001)
- Форум Как тип блочного устройства влияет на скрость mysql? (2014)
- Форум Есть ли способ дефрагментировать MySQL-таблицу типа MEMORY? (2014)
- Форум Подскажите хороший бесплатный хостинг php-mysql по типу narod.ru (2016)