Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Описание таблицы Btrieve [D6, Btrieve]


ААР ©   (2005-08-26 11:24:00) 

Доброго времени суток!
Возможно, кто-то ответит на следующий нетривиальный вопрос по Дельфи.

Для прямого подключения к базе с использованием Btrieve API необходимо расписать в программе структуру таблицы (добавляется тип record с полями, соответствующими названиям полей в таблице). При этом размеры и типы полей должны точно соответствовать (например, unsigned int, 4 byte (в таблице) -> longword (Дельфи))

Так вот, у Btriev-a есть тип, называемый не иначе, как "COBOL Decimal Comp-3", длиной 3 байта... Слово Decimal явно говорит о том, что тип - с плавающей точкой. Но вещественного типа длиной 3 байта в Delphi нет. Позволяет ли Дельфя как-то обойти такую ситуацию? Добавить свой вещественный тип?


Erik1   (2005-08-29 15:31:00) [1]

А почему бы ненаписать Array[0..2] of byte ?


ААР   (2005-08-29 09:03:00) [2]

Кому интересно, могут посмотреть здесь:

http://www.sql.ru/forum/actualthread.aspx?bid=23&tid=211708&pg=-1


ААР   (2005-08-26 14:57:00) [3]


> я с этим общался через компоненты Titan, ничего вроде. 3
> это может версия :) или длина дробной части.


Через Titan получается на порядок медленнее, я проверял. Кстати, самый быстрый ODBC для первасива, по моим наблюдениям, Merant. С его помощью выгрузка 10000 записей из 2 Гб файла происходит в течение 5 минут. Для моей задачи это слишком долго.


> Decimal говорит о том что число десятичное.


Это суть проблемы не меняет. Надо как-то определять тип. Я пробовал указать string[3], array [0..2] of char, - не помогает.


tesseract   (2005-08-26 13:49:00) [4]

>>Слово Decimal явно говорит о том, что тип - с плавающей точкой
Decimal говорит о том что число десятичное.


alex_***   (2005-08-26 13:33:00) [5]

я с этим общался через компоненты Titan, ничего вроде. 3 это может версия :) или длина дробной части.


Наверх

Титульная страница Поиск, карта сайта Написать письмо