Вниз
Скачать: CL | DM;

Float поля в DBase   Найти похожие ветки 

 
KADAN   (2004-01-29 09:37) [0]

Драссе, мастера! Знаю, что DBase такие поля делаются как N(10,2)
Не могу етого сделать из Delphi. Делается только так:

FieldDefs.Clear;
FieldDefs.Add("DATE",ftDate);
FieldDefs.Add("PRIXOD",ftFloat);
FieldDefs.Add("RASXOD1",ftFloat);
FieldDefs.Add("RASXOD2",ftFloat);
FieldDefs.Add("SALDO",ftFloat);
FieldDefs.Add("NOTE",ftString,20);
CreateTable;

И после етого могу писать table1.FieldByName("PRIXOD").AsFloat и все работает. Хотя когда открываю в Database Desktop"е значение типа поля оказывается не указанным вообще. А теперь, внимание, вопрос: не аукнется ли мне такой неуказанный Float в будущем, и если да, то как сделать нормальный N(10,2)???


 
Anatoly Podgoretsky ©   (2004-01-29 10:06) [1]

N(10,2) это не float поля, а Numeric (BCD)

Add is provided for backward compatibility. The recommended way to add new field definitions to the Items property array is using the AddFieldDef method.


 
KADAN   (2004-01-29 10:26) [2]

Ну хорошо, пусть Numeric, я имел ввиду, что мне надо поле вида ХХХХХХХХХХ.ХХ, а с AddFieldDef та же ерунда, там только один Size.


 
KADAN   (2004-01-29 10:28) [3]

И, кстати, если в Query делать "PRIXOD" NUMERIC(10,2), В dbd32 опять не показыавется тип поля... :(


 
KADAN   (2004-01-29 10:54) [4]

Ладно, я разобрался с тем что надо юзать ftBCD, но тогда у меня поле становится 20 и 4, ето для меня много...

with Fielddefs.AddFieldDef do begin
DataType:=ftBCD;
Name:="PRIXOD";
Size:=10;
Precision:=2;
end;



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.02 c
3-79642
?
2004-01-31 21:54
2004.02.25
Взаимодействие сервера и клиента.


14-80192
pirat
2004-01-31 03:53
2004.02.25
Ищу работу =)


1-79944
Ш-К
2004-02-09 16:15
2004.02.25
Абсолютные координаты.


1-79751
Alex*
2004-02-12 09:32
2004.02.25
PasteSpecial в Excele.


6-80084
RaPToR_1
2003-12-21 17:14
2004.02.25
включения компа из сети




   Наверх