GiperFuzz
Апрель 22, 2007 22:32:59
Пользуюсь либой MySQLdb, и несколько напрягает, то что вместо “Null” возвращается None (по логике программы приходится руками перебирать возвращаемые значения и заменять). Есть вроде преобразование возвращаемых значений, но вот как заменять none (а точнее отменить замену Null на None) не нашёл. Никто не сталкивался?
Заранее спасибо!
proDiva
Апрель 23, 2007 09:06:06
Сталкиваюсь, причем ты не описал всю проблему……..
Менять Null на None и обратно я не пыталась, мне оба варианта не нравятся, объясняю почему:
Если поле базы данных разрешает значение Null и оно стоит по умолчанию, то это не значит, что ты сможешь вставить это значение в это поле используя MySQLdb. Эту ситуацию я обошла тем, что убрала значение по умолчанию Null. Еще сложность с датами…… возвращает из базы None, а вставлять нужно ‘0000-00-00’.
OlDer
Апрель 24, 2007 11:21:09
GiperFuzz
напрягает, то что вместо “Null” возвращается None
Ты что, хочешь чтобы он тебе вместо
None возвращал строку “Null”???
None - это как раз и есть ближайший питоновский эквивалент SQL-ного NULL.
Почитайте Дейта о том что такое NULL и с чем его едят. Ну, или вот тут есть начальная информация:
http://ru.wikipedia.org/wiki/NULL_%28SQL%29
GiperFuzz
Апрель 26, 2007 23:20:30
proDiva
Сталкиваюсь, причем ты не описал всю проблему……..
Менять Null на None и обратно я не пыталась, мне оба варианта не нравятся, объясняю почему:
Если поле базы данных разрешает значение Null и оно стоит по умолчанию, то это не значит, что ты сможешь вставить это значение в это поле используя MySQLdb. Эту ситуацию я обошла тем, что убрала значение по умолчанию Null. Еще сложность с датами…… возвращает из базы None, а вставлять нужно ‘0000-00-00’.
Да, приблизительно такая же фигня. У меня всё осложняется тем, что возвращаю результаты по XMLRPC, а в нём None запрещены. Ну и ещё по логике программы тоже лучше, чтобы не None. Сейчас просто в цикле всё заменяю, но неудобно. Проовал переопределить преобразователи типов возвращаемых значений, но в них None даже не передаётся :(