Неверное строковое значение inet_aton при вставке, но не при выборе

Следующий запрос возвращает список IP-адресов правильно в inet_aton формат:

SELECT DISTINCT(INET_ATON(invip.ipAddress)) 
FROM inv_dns AS invip 
WHERE invip.ipAddress != '' AND invip.ipAddress IS NOT NULL;

Однако, когда я пытаюсь вставить их, я получаю сообщение об ошибке:

INSERT INTO aux_used_ip (ip) 
SELECT DISTINCT(INET_ATON(invip.ipAddress)) 
FROM inv_dns AS invip 
WHERE invip.ipAddress != '' AND invip.ipAddress IS NOT NULL;

# 1411 - Неверное строковое значение: '`equipment``.invip`. IpAddress`' для функции inet_aton.

Как ни странно, я не вижу ошибок в нашей производственной системе, которая работает на более старой версии MySQL. Этот запрос находился в базе кода уже несколько лет, и я только сейчас замечаю эту проблему при тестировании на компьютере разработчика с более новой версией MySQL. Я не могу понять, почему это не работает.

0 ответов

Другие вопросы по тегам