Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2004.08.15;
Скачать: [xml.tar.bz2];

Вниз

Null   Найти похожие ветки 

 
Zlod3y   (2004-07-16 10:50) [0]

В числовое поле при использовании метода Insert в таблицу сразу записывается 0! Мне не нужен этот ноль, нужно пустое поле.....и я поступаю сл. образом:

with DataModule1.Table1 do begin
.....
FieldValues["Field_name"]:=null;
.....
Post;     //<-здесь возникает искличительная ситуация
end;


Конечно я обрабатываю такую искличительную ситуацию оч. просто:

with DataModule1.Table1 do begin
.....
FieldValues["Field_name"]:=null;
.....
try
Post;    //<-здесь возникает искличительная ситуация
except
//здесь пусто
end;
refresh;
end;


Refresh делаю потому-что после Post таблица переводится в режим dsEdit...

Как мне избежать этой исключительной ситуации?


 
Ega23 ©   (2004-07-16 10:57) [1]

Default на это поле NULL поставь.


 
Anatoly Podgoretsky ©   (2004-07-16 11:05) [2]

Эту строчку убрать из кода программы
FieldValues["Field_name"]:=null;


 
Zlod3y   (2004-07-16 11:22) [3]


> Anatoly Podgoretsky ©   (16.07.04 11:05) [2]
> Эту строчку убрать из кода программы
> FieldValues["Field_name"]:=null;

Тогда в поле запишется "0"


 
Соловьев ©   (2004-07-16 12:26) [4]


> Мне не нужен этот ноль, нужно пустое поле.....

FieldByName("field").Clear;


 
Reindeer Moss Eater ©   (2004-07-16 12:28) [5]

> FieldValues["Field_name"]:=null;

FieldValues - это Variant
Вариант со значением null для числового поля это ноль.
Все по-честному.


 
Viktor1   (2004-07-16 12:37) [6]

Возможно стоит по умолчанию 0 в Accesse.
Открой таблицу в самом Accessе. Там внизу есть "Значение по умолчанию", так оно при созданиии цислового поля сразу стовится 0.


 
Reindeer Moss Eater ©   (2004-07-16 12:39) [7]

Значение по умолчанию вставится в поле если из приложения придет запрос на апдейт записи в котором поле это не упомянуто вообще.
В противном случае никакой defaul туда не попадет.


 
Reindeer Moss Eater ©   (2004-07-16 12:40) [8]

на инсерт конечно же, а не на апдейт.


 
Viktor1   (2004-07-16 13:20) [9]

При следющем открытии поле где по умолчанию 0 , в Gride будет забито нулями.


 
Reindeer Moss Eater ©   (2004-07-16 13:24) [10]

Ну и при чем здесь какой-то грид?
И тем более какой-то символ отображаемый в этом гриде и к физическому полю таблицы имеющий весьма отдаленное отношение?

У человека есть явное присвоение значения полю датасета.
Никакое DEFAULT значение в это поле ни в одном движке никогда не попадет.

Хоть десять гридов позови на помошь.


 
D.J.Star   (2004-07-16 18:33) [11]


> В числовое поле при использовании метода Insert в таблицу
> сразу записывается 0! Мне не нужен этот ноль, нужно пустое
> поле.....и я поступаю сл. образом:
>
> with DataModule1.Table1 do begin
> .....
> FieldValues["Field_name"]:=null;
> .....
> Post;     //<-здесь возникает искличительная ситуация
> end;
>
>
> Конечно я обрабатываю такую искличительную ситуацию оч.
> просто:
>
> with DataModule1.Table1 do begin
> .....
> FieldValues["Field_name"]:=null;
> .....
> try
> Post;    //<-здесь возникает искличительная ситуация
> except
> //здесь пусто
> end;
> refresh;
> end;
>
>
> Refresh делаю потому-что после Post таблица переводится
> в режим dsEdit...
>
> Как мне избежать этой исключительной ситуации?

Ну вы чё, братва!!! Null это "0", а пустое значение - это "nil"!
Во всяком случае нужно преереструктуизировать таблицу и отменить обязательное присвоение значение полю.


 
Reindeer Moss Eater ©   (2004-07-16 18:40) [12]

Ну вы чё, братва!!! Null это "0", а пустое значение - это "nil"!
Братва тут перетерла и порешила что null это вариант, а nil это Pointer.


 
Zlod3y   (2004-07-17 09:14) [13]

Всё братва.....спасибки всем :-)....всё-таки решил ничего не делать и оставить всё как было

ЗЫ. D.J.Star ты не прав. nil - это указатель на пустоту, а null - это даже не ноль :^)

ЗЫ2. а вариант в котором мне значение по умолчанию для поля пришлось отвергнуть, подробности "почему?" мне лень описывать.



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

Форум: "Базы";
Текущий архив: 2004.08.15;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.034 c
1-1091453281
Alex871
2004-08-02 17:28
2004.08.15
Удаление компонента по клику мыши


1-1091453856
Andrey
2004-08-02 17:37
2004.08.15
Outlook Express


3-1090569543
vital
2004-07-23 11:59
2004.08.15
Count and distinct вместе ошибку выдают


6-1087045291
Никита
2004-06-12 17:01
2004.08.15
Подключение к интернету при помощи Delphi


1-1091491749
Almaz
2004-08-03 04:09
2004.08.15
Выбор Published свойств, определенных в конкретном классе





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский