Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Delphi: Базы данных и репортинг > Проверить значение поля |
Автор: evgeniyr 18.7.2005, 08:18 |
Здравствуйте! Есть таблица, в ней поле id, тип Integer, поле не ключевое и может ничего не содержать. Как проверить, что id не содержит целочисленного значения? if Data.FieldByName('id').AsInteger = ???? then .... Заранее благодарен. |
Автор: Bes 18.7.2005, 08:30 |
Может выполнить запрос для этой записи? select count(*) as id_null from MyTab where id is null |
Автор: ~FoX~ 18.7.2005, 08:30 | ||
Я человек ленивый, по этому проверяю так:
Это конечно не совсем хорошо, но проще чем остальное |
Автор: evgeniyr 18.7.2005, 08:38 |
>Может выполнить запрос для этой записи? >select count(*) as id_null from MyTab where id is null Это не подходит, сама запись тоже нужна, просто поле id не будет использоваться. >if Data.FieldByName('id').AsInteger = 0 then .......; Ноль-это число и уже используется. Мне нужно отловить null втаблице. if Data.FieldByName('id').AsInteger = nil then .......; не прокатывает. |
Автор: ~FoX~ 18.7.2005, 08:39 | ||
|
Автор: Bes 18.7.2005, 08:45 | ||
дак е мое одно другому не помеха проверяй одним компонентом выводи другим |
Автор: evgeniyr 18.7.2005, 08:53 |
> if Trim(Data.FieldByName('id').AsString) = '' then Тип поля Integer, был бы String - вопросов не задавал бы... > дак е мое одно другому не помеха проверяй одним компонентом выводи другим Это как? Мне просто надо знать, что в текущей записи, поле id не содержит целочисленного значения. |
Автор: Alex 18.7.2005, 09:12 | ||||
Я тогда совсем лентяй ![]()
|
Автор: ~FoX~ 18.7.2005, 09:20 | ||
Alex Это я не проверил перед отправкой месагу ![]()
Какая раздница, ввел интеджер-вренул стринг, преобразованием типов пусть машина занимается, она железная. ![]() |
Автор: Bes 18.7.2005, 09:23 |
2Alex: респект если это действительно работает |
Автор: evgeniyr 18.7.2005, 09:48 |
Спасибо, Alex, все работает. |
Автор: Alex 18.7.2005, 09:56 | ||
Что значит действительно, работает, это вообще-то единственный 100% гарантированный способ проверки, т.к. те, что вы предлагаете, не сработают в большинстве случаях (все зависит от настроек модуля variants и от значений в базе). |