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




Вниз

Как сосдать DBF таблицуказав для поля кол-во знаков после 


derr   (2002-01-04 12:33) [0]

Как сосдать DBF таблицу казав для поля кол-во знаков после ","
Есть CreateTable и указываем поля, но для числовых не нашел как указать например 2 знака после запятой



Val   (2002-01-04 12:53) [1]

from Help:
CREATE TABLE "employee.db"

(
last_name CHAR(20),
first_name CHAR(15),
salary NUMERIC(10,2),
dept_no SMALLINT,
PRIMARY KEY (last_name, first_name)

)



derr   (2002-01-04 13:13) [2]

Это если через ADO, а через BDE и для DBase, Fox ?



Val   (2002-01-04 13:44) [3]

там сказано про ADO?



derr   (2002-01-04 14:01) [4]

Если из help, то да
Поиск createtable дает пример:
...
Add("Salary", ftFloat, 0, False);
т.е. для Float нет длины ?
Может не float? Что тогда ?



Val   (2002-01-04 14:06) [5]

Уважаемый, я вам привел пример даже-ведь видно, что это SQL?
Попробуйте посмотреть Local SQL Help.



derr   (2002-01-04 14:14) [6]

Да я понял, что это sql !
Возможно неточно выразил свои дурные мысли.
BD локальная FOX.dbf вот в чем дело.
И без SQL...



Val   (2002-01-04 14:23) [7]

поставьте компонент TQuery, и в его свойстве Text пропишите SQL-предложение создания таблицы



Val   (2002-01-04 14:27) [8]

...или посмотрите TFloatField.Precision



derr   (2002-01-04 15:19) [9]

Есть такой, но как его в CreateTable включить ?
Да и длина для Float не указывается !
Подчеркиваю, все надо без SQL (не на моей машине)
Может CurrencyField ? или BCDField



derr   (2002-01-04 23:09) [10]

...или посмотрите TFloatField.Precision
Похоже на идите, но не знаю куда...



derr   (2002-01-07 14:36) [11]

Это все ерунда !
С "," только через query !



SB   (2002-01-11 08:58) [12]

Я все делаю через вызов функции BDE (DbiCreateTable), там можно указать все что надо, только муторно :)



Oracle   (2002-01-11 09:07) [13]

Тип поля нужен не ftFloat, а ftBCD



aus   (2002-01-12 01:14) [14]

а EditFormat для поля не подходит?



dougine   (2002-01-23 15:23) [15]

Для создания Numeric поля надо использовать ftBCD. Особенность в том, что для ftBCD свойство Precision указывает на длину, а Size - на кол-во знаков после запятой. Т.е. кусок

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

создает поле типа N 10/2
Однако, я столкнулся с другой проблемой:
если Size:=0, а Precizion:=1, то ожидаемого N 1/0 не получается, а выдает N 20/4. Если в этом варианте поставить Size:=2, то все нормально - получается N 2/0. Пытаюсь сейчас решить проблему. Может, кто знает - подскажите..




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




Наверх





Память: 0.73 MB
Время: 0.019 c
6-57172           Саша.Ру               2001-11-25 20:09  2002.02.18  
Соединение по протоколу HTTPs


4-57245           KLM                   2001-12-18 06:59  2002.02.18  
Доступ к файлу


3-56998           навичек               2002-01-24 03:28  2002.02.18  
Чегото непонятное с TTable (или со мной:( )


1-57149           tovSuhov              2002-02-04 08:06  2002.02.18  
Как узнать текущую версию приложения...


3-57012           Savage                2002-01-24 15:44  2002.02.18  
MS SQL Server - запись файла в базу