Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2007.06.03;
Скачать: [xml.tar.bz2];

Вниз

Большие числа int64/LargeInt   Найти похожие ветки 

 
O.O   (2007-03-11 07:28) [0]

Таблица FireBird, nип поля BigInt.
D6, IBX6.11
Очень неудобно что у TIBQuery.FieldByName и TIBQuery.ParamByName отсутствует тип AsLargeInt а только AsInteger, приходится действовать через преобразование строкового типа в int64 и наоборот
Это только у D6 или D7 тоже?
Никак подругому действовать нельзя?


 
atruhin ©   (2007-03-11 08:53) [1]

C TIBxxx давно не работал, но например у FIB+, TFIBQuery.FielbByName() имеет AsInt64.
TFIBDataset при использовании AsInteger работает с int64.


 
Johnmen ©   (2007-03-11 13:35) [2]


> отсутствует тип AsLargeInt а только AsInteger

Если внимательно читать справку, то станет ясно, что AsInteger приводит к такому целому, каким является поле. Напр., если оно BigInt, то приведётся к int64.


 
O.O   (2007-03-12 07:48) [3]


> Johnmen ©   (11.03.07 13:35) [2]

Неприводится, пробовал.
Хорошо что хоть IBStoredProc.ParamByName("NameParam").AsCurrency берет значение int64.


 
atruhin ©   (2007-03-12 13:39) [4]

Давно пора купить FIB+, там очень много интересного.
С int64 работаю постоянно, все ОК


 
O.O   (2007-03-12 14:19) [5]


> atruhin ©   (12.03.07 13:39) [4]

Наверно Вы правы насчёт FIB+, хотя до выявления подобной недоработки IBX вполне устраивал. А сам факт выглядет странно, ведь формат TLargeIntField есть!, и с ним работает всё нормально, но при динамическом создании SQL запроса сами понимаете :(


 
atruhin ©   (2007-03-12 14:40) [6]

В FIB+ много интересного, например:
централизованная обработка исключений;
кэширование метеданных и блоб полей (актуально для меделенных линий);
нормальное восстановление соединения (хотя не знаю может и в IBX поправили);
и много мелких удобств.


 
O.O   (2007-03-12 16:48) [7]

Спасибо, буду думать.
Видимо новые проекты буду планировать с FIB+.
Вопрос: насколько сложен перевод приложений с IBX на FIB+ ?


 
~SerJant~   (2007-03-13 04:38) [8]


> O.O   (12.03.07 16:48) [7]

Никаких сложностей, направление развития компонентов IBX и FIBPlus одно. В инете есть ...уже бесплатные версии )))


 
atruhin ©   (2007-03-13 14:35) [9]

> В инете есть ...уже бесплатные версии )))

А вот за это RO дают!

> Вопрос: насколько сложен перевод приложений с IBX на FIB+ ?

Есть мастера миграции, но сам не пользовался. А вообще в простом случае, замена компонент + поправить несколько методов.


 
Johnmen ©   (2007-03-13 18:11) [10]


> Johnmen ©   (11.03.07 13:35) [2]
> > отсутствует тип AsLargeInt а только AsIntegerЕсли внимательно
> читать справку, то станет ясно, что AsInteger приводит к
> такому целому, каким является поле. Напр., если оно BigInt,
>  то приведётся к int64.


Ты сам-то справку читал? Похоже, нет, т.к. чушь пишешь.
AsInteger это приведение к 32-битному целому. А к int64 такого приведения нет.


> O.O

Нет никаких проблем.
Берём вариантное значение и его уже приводим к int64:
var i64 : int64;
i64:=FieldByName(...).Value;
Если вдруг значение у поля отсутствует, то перед этим проверь на null.


 
O.O   (2007-03-14 16:50) [11]


> Johnmen ©

Спасибо за совет, попробую



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

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

Наверх




Память: 0.47 MB
Время: 0.058 c
2-1179073255
neiromantik
2007-05-13 20:20
2007.06.03
Динамическая память


15-1178373658
Poed
2007-05-05 18:00
2007.06.03
В Турбо паскале не создается исполняемый файл!


2-1179238378
AlexeiBerkov
2007-05-15 18:12
2007.06.03
динамическое создание элементов в TPopupMenu и обработка


15-1178615955
Jan1
2007-05-08 13:19
2007.06.03
Защита программы от крэка


1-1175846980
Bless
2007-04-06 12:09
2007.06.03
зачем нужно TInterfacedObject(Result).FRefCount := 1 ?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский