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

Вниз

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;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.026 c
14-1091094994
Mellon
2004-07-29 13:56
2004.08.15
Народ помогите по компонентам пожайлуста


10-1028103540
А. Н. Оним
2002-07-31 16:55
2004.08.15
Передача методу COM-сервера объекта(TClientDataSet) в параметре


1-1091051591
mouse_web
2004-07-29 01:53
2004.08.15
Убрать иконку из заголовка окна


14-1091029810
DeadMeat
2004-07-28 19:50
2004.08.15
Сетка с WinXP и другими...


14-1091034050
Art_Z
2004-07-28 21:00
2004.08.15
Как завести анкету?