Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум на CrossPlatform.RU _ Qt Разработка баз данных _ Пустая строка в поле VARCHAR(n) NOT NULL пишется как 2 апострофа вместо пенделя

Автор: sindbad07 19.8.2010, 18:53

Пустая строка в поле VARCHAR(n) NOT NULL (PosgreSQL+driver) зачем-то записывается как 2 апострофа, данные берутся из редактируемого ПУСТОГО! LineEdit'а, вместо того, чтобы отловить недопустимую операцию (запись пустой (null) строки) получается такая какавасия, чем лечить? Спасибо.

Автор: Алексей1153 19.8.2010, 19:06

Когда читаешь из контрола, обрабатывай такую ситуацию (пустая строка) и в запрос вместо 'строка' ставь NULL (без апострофоф)

Автор: sindbad07 19.8.2010, 19:10

Дело в том, что я сам не читаю оттуда данные, у меня это делает mapper, просто не хочется придумывать себе грабли, кто еще знает в чем косяк?

Автор: Алексей1153 19.8.2010, 19:18

Какой такой mapper, не знаю ) Сложно что ли вручную запрос создать, без левоты ?

Автор: sindbad07 19.8.2010, 19:24

QDataWidgetMapper (удобная вещь, цепляет контролы к полям таблицы) + модель таблицы, вручную получается нужно написать новый мапер :unsure:

Автор: Алексей1153 19.8.2010, 19:31

почему-то не люблю такие автоматизации ещё со времён знакомства с VB6 ))
Предпочитаю ручками. И встроенную процедуру, если возможно, предпочитаю - там подправить можно что угодно

Форум Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)