powered by simpleCommunicator - 2.0.44     © 2025 Programmizd 02
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Oracle 8i + BDE + Delphi 5
5 сообщений из 5, страница 1 из 1
Oracle 8i + BDE + Delphi 5
    #32058151
В данный момент работаю над переводом большого проекта
с MSSQL на ORACLE 8.
Возникла проблема: В Oracle тип данных Integer понимается
как NUMERIC(*,0). А TQuery и TTable воспринимают эти поля как TFloatField. Таких полей достаточно много и для нормальной работы системы нужно либо переделывать все такие поля и некоторый код работы с ними на клиенте с TIntegerField на TFloatField (что в общем-то нехорошо), либо писать компонент для сервера приложений который будет смотреть масштаб NUMERIC'а в системных таблицах и создавать либо TIntegerField, либо TFloatField.
Подскажите пожалуйста, что лучше.
Или есть другой путь?
Заранее спасибо.
...
Рейтинг: 0 / 0
Oracle 8i + BDE + Delphi 5
    #32058167
T34
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
T34
Гость
Nu dlja nachala by ja poiskal chto-to vmesto BDE, t.k. BDE - to eshe izvrashenie :-) . K tomu-zhe v Delphi-7 , naprimer, ona uzhe ne podderzhivaetsja.
...
Рейтинг: 0 / 0
Oracle 8i + BDE + Delphi 5
    #32058325
DOA я пробовал, но они, к сожалению, тоже создают
TFloatField. Пробовал через ADO - они создают TBCDField, а у меня на клиентской стороне полно TIntegerField. Очень уж не хочется переписывать TBDEDataset(в нем инициализируются и TFieldsDefs) и его наследников.
...
Рейтинг: 0 / 0
Oracle 8i + BDE + Delphi 5
    #32058380
DiMonstr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ну во первых, BDE работает крайне не стабильно, долго и вообще галимо !!!. Если ты хочешь работать на делфях с Ораклом, и НЕ хочешь проблемм, то у тебя один путь - DOA, второго не дано (не выдумай ODBC юзать [тем более совместно с BDE]), так что клиента все равно придется переписывать. А во-вторых, оракл в любом соучае даже на number(1) юзает 22 быйта, можешь проверить:
Код: plaintext
select * from sys.all_tab_columns where owner='YOUR_SCHEME'
см. значение поля DATA_LENGTH, поэтому любое число будет Float. Ну и на заметку, ты по-прежнему можешь писать:
PayrollID := odsPAYMENTPAYROLL.AsInteger;
или даже так:
odsPAYMENTPAYROLL.AsInteger := 10;
тока само число в оракле не должно зашкакивать за лимит интегера.
...
Рейтинг: 0 / 0
Oracle 8i + BDE + Delphi 5
    #32058743
Фотография Sterh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
компоненты NCOCI8
пиши на мыло - вышлю
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Oracle 8i + BDE + Delphi 5
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]