Форум: "Базы";
Текущий архив: 2005.06.29;
Скачать: [xml.tar.bz2];
Внизсоздать dbf средствами дельфы Найти похожие ветки
← →
mr.IL © (2005-05-12 16:47) [0]Нужно создать базу в dbf формате средствами дельфы.
Вы держка из хелпа:
Creates a new field definition object and adds it to the Items property of this TFieldDefs object.
procedure Add(const Name: String; DataType: TFieldType; Size: Integer = 0; Required: Boolean = False);
Засада в том, что в требуемой базе, есть поле типа Number 12.2, а в функции add параметр Size: Integer
← →
DSKalugin © (2005-05-12 16:54) [1]так базу создать или поле в таблице готовой?
смотри хелп TFieldDefs.AddFieldDef->Table Creation example
← →
evvcom © (2005-05-12 16:58) [2]
> Нужно создать базу в dbf формате средствами дельфы.
А может достаточно создать шаблон в DBD, например, и положить в подпапку программы, а потом просто копировать и заполнять? Телепатор у меня верно настроен?
← →
mr.IL © (2005-05-12 16:59) [3]Собственно надо создать табицу, а вней поле типа Number размерностью 12.2.
У AddFieldDef есть свойство size, но оно integer
← →
mr.IL © (2005-05-12 17:01) [4]Блин оно конечно мона, но есть требование обзывать каждый запрашиваемый период ету таблицу по другому.
← →
msguns © (2005-05-12 17:03) [5]1. DBD лучше вымыть, выкрасить, сжечь, пепел положить в урну, урну закопать и быстро забыть где.
2. Лучше всего создавать таблицы средствами SQL (DDL) - Help+Local SQL: кратко, наглядно, надежно, современно
;))
← →
mr.IL © (2005-05-12 17:03) [6]evvcom,а может ты знаешь что есть ЕФОП. :)
← →
mr.IL © (2005-05-12 17:07) [7]msguns Спасыбо, самый верный совет, может я вечером затупил.
← →
Anatoly Podgoretsky © (2005-05-12 17:07) [8]Структура фиксированая, то лучше создать шаблон и его копировать средствами БДЕ, а не файловой системы.
← →
evvcom © (2005-05-12 17:15) [9]
> evvcom,а может ты знаешь что есть ЕФОП
Нет не знаю. А почему я должен знать? Поисковики выдали что-то связанное с Bee-Line и еще что-то о каком-то проекте. Ну и что это такое?
← →
mr.IL © (2005-05-12 17:29) [10]2evvcom :))) Ето я на счет телепатора, на самом деле, именно ЕФОП (это отчет такой в вышестоящие инстанции) меня и задачит dbf таблицей. Блин, а на поисковики я специально зайду посмотреть, что они тебе выдали.
← →
AlexO © (2005-05-12 18:06) [11]//Засада в том, что в требуемой базе, есть поле типа Number 12.2, а в функции add параметр Size: Integer
Size - это не значение поля, а его размер (число байт) которое используется для его хранения
← →
DSKalugin © (2005-05-12 18:11) [12]>Засада в том, что в требуемой базе, есть поле типа Number 12.2, >а в функции add параметр Size: Integer
Ты не только на Size: Integer обращай внимание,
но и на DataType: TFieldType
выбирай ftBCD
а хэлп до конца надо дочитывать
Size is meaningful only for a field definition object with one of the following TFieldType values: ftString, ftBCD, ftBytes, ftVarBytes, ftBlob, ftMemo or ftGraphic. For string and byte fields, Size is the number of bytes reserved in the table for the field. For a BCD field, Size is the number of digits following the decimal point. For a BLOB, memo, or graphic field, Size is the number of bytes from the field’s value that are stored in the actual database table.
← →
mr.IL © (2005-05-12 18:26) [13]Упс. Я увидел BCD и даже не полез читать дальше (минус мне за невнимательность). Но, в общем, через create table реализовать усе требуемое действительно проще.
← →
Leonid (2005-05-13 09:33) [14]Почему бы не создать базу через SQL ?
Это куда проще.
← →
mr.IL © (2005-05-13 11:16) [15]Прошу простить. Вопрос в том, что при попытке создания через SQL
поля с именем "Date" он ругается на неправильное использование
операторов. Понимаю, что использовать оператор в название поля не
есть гут, но не я ставлю условия. Подскажите ПЛЗ как обойти. В кавычки запихивать уже пытался.
← →
evvcom © (2005-05-13 11:21) [16]
> В кавычки запихивать уже пытался.
И что? Не вышло? Как пытался?
← →
mr.IL © (2005-05-13 11:29) [17]SQL.Add(#34+"Date"+#34+"DATE,");
и
SQL.Add(""Date" DATE,");
← →
Style © (2005-05-13 11:33) [18]Есть хорошие компоненты
Halcyon
← →
Anatoly Podgoretsky © (2005-05-13 12:13) [19]mr.IL © (13.05.05 11:16) [15]
Кавычки должны быть правильные, в соответствии с движком и/или SQL интерпритатором.
← →
evvcom © (2005-05-13 12:14) [20]create table "dbf.dbf"
(
NUM NUMERIC(12,2),
"dbf.dbf"."DATE" DATE
)
← →
mr.IL © (2005-05-13 12:33) [21]Опс. Блин. Спасибо всем кто откликнулся. Блин, буду читать хелп до конца по 2 раза.
← →
evvcom © (2005-05-13 12:36) [22]Ты там что, блины ешь? Поди со сгущенкой?
← →
mr.IL © (2005-05-13 12:40) [23]Ж:) А телепатор у тебя в поряде. Поделись, где урвал. ;)
← →
evvcom © (2005-05-13 12:47) [24]Практика и только практика (после прочтения теории) :)
← →
KSK (2005-05-13 15:16) [25]
> Style © (13.05.05 11:33) [18]
> Есть хорошие компоненты
> Halcyon
Полностью согласен.
> evvcom © (13.05.05 12:14) [20]
> create table "dbf.dbf"
> (
> NUM NUMERIC(12,2),
> "dbf.dbf"."DATE" DATE
> )
получить NUMERIC(12,2) никак мне не удавалось - хоть укажи (12,4) хоть (12,2) - результат будет один и тотже.....
используя VFPOLEDB можна получить нужного размера поля типа Numeric, но файл получается виндовой кодировки
← →
ANB © (2005-05-13 15:42) [26]Если влом разбираться - исправь кодировку, пока таблица пустая через заголовок файла.
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2005.06.29;
Скачать: [xml.tar.bz2];
Память: 0.5 MB
Время: 0.044 c