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

Вниз

Описание таблицы Btrieve   Найти похожие ветки 

 
ААР   (2005-08-26 11:24) [0]

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

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

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


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

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


 
tesseract ©   (2005-08-26 13:49) [2]

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


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


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


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


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


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


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

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

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


 
Erik1 ©   (2005-08-29 15:31) [5]

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



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

Текущий архив: 2005.10.09;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.043 c
2-1125501742
kyn66
2005-08-31 19:22
2005.10.09
StringList вместо виртуального множества


14-1126882368
Lexer
2005-09-16 18:52
2005.10.09
Офис - не лучшее место для продуктивной работы.


4-1123735019
ndn
2005-08-11 08:36
2005.10.09
Медленная печать на матричном принтере


3-1125167604
lookin
2005-08-27 22:33
2005.10.09
База данных


6-1118900084
lightix
2005-06-16 09:34
2005.10.09
Отправка e-mail с помощью INDY:как получить MSGID письма?