Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.02.27;
Скачать: CL | DM;

Вниз

UpplyUpdates. FireBird Embedded. DBExpress.   Найти похожие ветки 

 
S.A.S.   (2005-01-25 18:45) [0]

Здравствуйте. Такая проблема : есть таблица, тип полей разный, первичный ключ присутствует. Если в гриде удалить значение в строковом поле (сделать NULL) и вызвать UpplyUpdates - все впорядке, если это проделать с числовым полем - вылетает ошибка AccesViolation. SQLMonitor показывает такой запрос :
update PEOPLE  set
FSTAVKA = ?
where
FID = ?
Это нормально ?


 
Desdechado ©   (2005-01-25 18:54) [1]

AV - это ненормально. Но у тебя, похоже, другой эксепшн. Типа поле не должно быть пустым или еще чего. Ты ж структуру непривел


 
S.A.S.   (2005-01-25 19:05) [2]

Не пустым может быть только первичный ключ FID, все остальные поля могут быть пустыми. Интересно то, что строковые поля принимают NULL, а все остальные (числовые, дата) - нет. И еще - после вылета AV и закрытия программы опять вылетает AV, а после повторного запуска в поле все-таки присутствует NULL.


 
sniknik ©   (2005-01-25 21:22) [3]

> Это нормально ?
вопрос в запросе? да нормально, это место куда подставится параметр, можно так и самому делать. ненормально если он (параметр) так и не был создан и в таком виде и "ушол" на сервер (впрочем у меня такое впечатление(непроверено) что некоторые сервера вопрос за легальный null воспринимают...).
> Если в гриде удалить значение в строковом поле (сделать NULL)
как сделать? clear у поля? тогда должно быть тоже самое.
а если в гриде то это у тебя пустая строка будет, вовсе не null.


 
S.A.S.   (2005-01-26 08:53) [4]

Здравствуйте еще раз. Действительно в таблицу при очистке поля записывается не NULL, а пустота, как для строковых так и для полей других типов, для которых это не есть хорошо. Подскажите тогда, как в такой ситуации в эти поля записать именно NULL. Может есть какое-то свойство у SQLQuery, Provider, ClientDataSet или SimpleDataSet. Или нужно обрабатывать событие типа onBeforePost или еще какое, и что внем тогда проверять? Спасибо.


 
S.A.S.   (2005-01-26 11:55) [5]

Как это делает, ну например, IB Expert ? - если удалить значение в поле - он автоматом ставит туда <null> и все проходит нормально. Может проблема в DBExpress ?



Страницы: 1 вся ветка

Текущий архив: 2005.02.27;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.071 c
14-1107346414
ммари
2005-02-02 15:13
2005.02.27
Сишарп


1-1108059375
baltazar
2005-02-10 21:16
2005.02.27
richedit


14-1107362868
Dell3r
2005-02-02 19:47
2005.02.27
Регистрация


6-1102434677
Klopan
2004-12-07 18:51
2005.02.27
FTP server


3-1106664316
juice
2005-01-25 17:45
2005.02.27
Запрос к 2-м базам