Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Delphi Новый топик    Ответить
Топик располагается на нескольких страницах: Ctrl  назад   1 [2] 3   вперед  Ctrl      все
 Re: Проблема при вставке большого количества записей из FB  [new]
WНаталья
Member

Откуда: Мурманск
Сообщений: 68
MaratIsk,

вернулась, к тому, с чего начала.
не могу подружить интербейсовкие компоненты с FB.

FireDac - работают, поэтому и остановилась на них...

К сообщению приложен файл. Размер - 32Kb


Сообщение было отредактировано: 15 фев 21, 22:38
15 фев 21, 22:42    [22281396]     Ответить | Цитировать Сообщить модератору
 Re: Проблема при вставке большого количества записей из FB  [new]
Dimitry Sibiryakov
Member

Откуда:
Сообщений: 52445

defecator
а чойта не канает ?

Ну почитай же топики, он Оракулом воспринимается как LONG RAW со всеми вытекающими
последствиями.

defecator
SQL_BINARY тоже побоку ?

Будет просто RAW с ещё более вытекающими последствиями.

Posted via ActualForum NNTP Server 1.5

15 фев 21, 23:06    [22281400]     Ответить | Цитировать Сообщить модератору
 Re: Проблема при вставке большого количества записей из FB  [new]
Cobalt747
Member

Откуда:
Сообщений: 2281
WНаталья,

Оставьте FireDac https://blogs.embarcadero.com/using-firedac-unidirectional-property-for-fast-low-memory-selection-set-processing/

и научитесь гуглить
16 фев 21, 12:49    [22281542]     Ответить | Цитировать Сообщить модератору
 Re: Проблема при вставке большого количества записей из FB  [new]
MaratIsk
Member

Откуда: Almaty, Kazakhstan
Сообщений: 2556
WНаталья
MaratIsk,

вернулась, к тому, с чего начала.
не могу подружить интербейсовкие компоненты с FB.

FireDac - работают, поэтому и остановилась на них...


подожди! ты же к серверу подключаешься. так?
тогда при чем unsupported on-disk structure ?!
16 фев 21, 15:27    [22281670]     Ответить | Цитировать Сообщить модератору
 Re: Проблема при вставке большого количества записей из FB  [new]
kdv
Member

Откуда: iBase.ru
Сообщений: 29547
WНаталья
при коннекте к БД получаю ошибку типа "структура БД не поддерживается".

врёте вы всё. вы ведь уже решили эту "проблему". И вообще, намешали ФБ и ИБ, и теперь "проблема"...
16 фев 21, 15:30    [22281672]     Ответить | Цитировать Сообщить модератору
 Re: Проблема при вставке большого количества записей из FB  [new]
kdv
Member

Откуда: iBase.ru
Сообщений: 29547
WНаталья,

могу ошибаться, но судя по сообщениям история такая
- кто-то где-то спёр базу Firebird.
- дали вам задание откопировать её в Оракл
- вы не понимая, какой версии нужен Firebird поставили абы что. Вероятно, для получения gds32.dll для компонент IBX поставили еще и InterBase.
- получаете "unsupported on-disk structure".
Ссылку на список форматов и версий ИБ и ФБ я вам уже дал. Казалось бы - ставим Firebird нужной для БД версии, генерируем через instclient требуемый gds32.dll.
И всё.
16 фев 21, 15:34    [22281675]     Ответить | Цитировать Сообщить модератору
 Re: Проблема при вставке большого количества записей из FB  [new]
Мимопроходящий
Member

Откуда: бурятский тундрюк, эсквайр
Сообщений: 31969

16.02.2021 15:34, kdv пишет:
> И всё.

нет, не всё.
тут программист нужен. ©

Posted via ActualForum NNTP Server 1.5

16 фев 21, 15:37    [22281676]     Ответить | Цитировать Сообщить модератору
 Re: Проблема при вставке большого количества записей из FB  [new]
Ivan_Pisarevsky
Member

Откуда: НН
Сообщений: 8716
kdv
WНаталья
при коннекте к БД получаю ошибку типа "структура БД не поддерживается".

врёте вы всё. вы ведь уже решили эту "проблему". И вообще, намешали ФБ и ИБ, и теперь "проблема"...
Все "поциэнты" врут, природа такая. :)

MaratIsk
подожди! ты же к серверу подключаешься. так?
тогда при чем unsupported on-disk structure ?!
Это мы уже пытались объяснить, толку пока нет. :)

Еще раз медленно: где-то на диске Цэ валяется либа gds32.dll от интербейза ее надо пристрелить вместе с сервером интербейз, он тут реально не нужен, более того, мешает.
Далее запустить штатный инсталлятор файрберд 3.0.7 выставить там галку "сгенерировать gds32", жмакнуть требуемое число раз пипку "далее" и "готово".
16 фев 21, 15:40    [22281678]     Ответить | Цитировать Сообщить модератору
 Re: Проблема при вставке большого количества записей из FB  [new]
s62
Member

Откуда: Жуковский
Сообщений: 1255
Я так понял, что ТС смогла подключиться при помощи FireDac (сообщение 1), но не смогла через IBX, который ей тут посоветовали. 22281378

Ну и пусть бы пользовалась FireDac, зачем мешать одно и другое.
16 фев 21, 16:19    [22281699]     Ответить | Цитировать Сообщить модератору
 Re: Проблема при вставке большого количества записей из FB  [new]
kdv
Member

Откуда: iBase.ru
Сообщений: 29547
Ivan_Pisarevsky,

gds32.dll "не той системы" не может быть причиной unsupported on-disk structure, ты же знаешь.
16 фев 21, 16:22    [22281701]     Ответить | Цитировать Сообщить модератору
 Re: Проблема при вставке большого количества записей из FB  [new]
Мимопроходящий
Member

Откуда: бурятский тундрюк, эсквайр
Сообщений: 31969

16.02.2021 16:22, kdv пишет:
> gds32.dll "не той системы" не может быть причиной unsupported on-disk structure, ты же знаешь.

при установленных одновременно Interbase и Firebird - вполне.
да ещё и при неизвестной строке коннекта.

Posted via ActualForum NNTP Server 1.5

16 фев 21, 16:27    [22281705]     Ответить | Цитировать Сообщить модератору
 Re: Проблема при вставке большого количества записей из FB  [new]
MaratIsk
Member

Откуда: Almaty, Kazakhstan
Сообщений: 2556
у ТС проблема с большими наборами данных unsupported on-disk structure
а с маленькими значит нет ?!

случай тяжелый
16 фев 21, 16:31    [22281712]     Ответить | Цитировать Сообщить модератору
 Re: Проблема при вставке большого количества записей из FB  [new]
WНаталья
Member

Откуда: Мурманск
Сообщений: 68
kdv,

я удалила нахрен все библиотеки gds32.dll и fbclient.dll.

Затем установила FB 3.0.
Проверила через ISQl коннектится ли к БД.

Далее скопировала библиотеку в папке с программой и явно указала VendorLib.

В FDQuery написала запрос.

Но даже при попытке вывести кол-во записей , получаю Out of Memory.

Вопрос не почему я не использую интербейсовкие компоненты, не про то почему не использую линк...

А про то, как с помощью средствами FireDac избежать этой ошибки. Если есть конечно, такой способ...
16 фев 21, 17:09    [22281733]     Ответить | Цитировать Сообщить модератору
 Re: Проблема при вставке большого количества записей из FB  [new]
WНаталья
Member

Откуда: Мурманск
Сообщений: 68
kdv
WНаталья,
генерируем через instclient требуемый gds32.dll.
.


про это не знала. Попробую.Спасибо
16 фев 21, 17:11    [22281735]     Ответить | Цитировать Сообщить модератору
 Re: Проблема при вставке большого количества записей из FB  [new]
Гаджимурадов Рустам
Member

Откуда:
Сообщений: 62404
WНаталья> В FDQuery написала запрос.
>
> Но даже при попытке вывести кол-во записей , получаю Out of Memory.

Ну так показывайте, что именно делаете, какой запрос, какие настройки.

Posted via ActualForum NNTP Server 1.5

16 фев 21, 17:11    [22281736]     Ответить | Цитировать Сообщить модератору
 Re: Проблема при вставке большого количества записей из FB  [new]
ъъъъъ
Member

Откуда:
Сообщений: 1769
Гаджимурадов Рустам,

В первом сообщении - используется TFDQuery - это потомок TDataSet, через него выполняется вставка, все данные остаются в памяти - вот и аут оф мем.
16 фев 21, 17:15    [22281743]     Ответить | Цитировать Сообщить модератору
 Re: Проблема при вставке большого количества записей из FB  [new]
Dimitry Sibiryakov
Member

Откуда:
Сообщений: 52445

WНаталья
А про то, как с помощью средствами FireDac избежать этой ошибки. Если есть конечно, такой
способ...

Вам уже несколько раз сказали не использовать компонент, кэширующий принятые записи в
памяти, и даже ткнули пальцем в свойство Unidirectional. Сколько ещё раз надо это всё
повторить чтобы до Вас дошло?

Posted via ActualForum NNTP Server 1.5

16 фев 21, 17:20    [22281749]     Ответить | Цитировать Сообщить модератору
 Re: Проблема при вставке большого количества записей из FB  [new]
Гаджимурадов Рустам
Member

Откуда:
Сообщений: 62404
Тогда см. уже несколько раз упомянутый UniDirectional.
И даже с датасетом-а-ля-FDQuery можно было уже 10
раз догадаться использовать ограничение выборки...

P.S. Как там out-of-memory можно было словить?
15000 БЛОБов одновременно в памяти держать что ли?

Posted via ActualForum NNTP Server 1.5

16 фев 21, 17:38    [22281761]     Ответить | Цитировать Сообщить модератору
 Re: Проблема при вставке большого количества записей из FB  [new]
WНаталья
Member

Откуда: Мурманск
Сообщений: 68
Dimitry Sibiryakov,

а вы пробовали найти у TFDQuery Unidirectional ?? его там нет.

И да, я делаю ограничение выборки, например, первые 100. Но даже это не помогает.
16 фев 21, 18:40    [22281820]     Ответить | Цитировать Сообщить модератору
 Re: Проблема при вставке большого количества записей из FB  [new]
WНаталья
Member

Откуда: Мурманск
Сообщений: 68
Вернее помогает, но ненадолго.
16 фев 21, 18:41    [22281822]     Ответить | Цитировать Сообщить модератору
 Re: Проблема при вставке большого количества записей из FB  [new]
Мимопроходящий
Member

Откуда: бурятский тундрюк, эсквайр
Сообщений: 31969

16.02.2021 18:40, WНаталья пишет:
> а вы пробовали найти у TFDQuery Unidirectional ?? его там нет.

да ладно!

http://docwiki.embarcadero.com/RADStudio/Seattle/en/Fetching_and_Populating_Questions_(FireDAC)

Posted via ActualForum NNTP Server 1.5

16 фев 21, 18:45    [22281829]     Ответить | Цитировать Сообщить модератору
 Re: Проблема при вставке большого количества записей из FB  [new]
Dimitry Sibiryakov
Member

Откуда:
Сообщений: 52445

WНаталья
а вы пробовали найти у TFDQuery Unidirectional ?? его там нет.

Гугль способен найти даже то, чего нет.
https://blogs.embarcadero.com/using-firedac-unidirectional-property-for-fast-low-memory-selection-set-processing/

Posted via ActualForum NNTP Server 1.5

16 фев 21, 18:45    [22281830]     Ответить | Цитировать Сообщить модератору
 Re: Проблема при вставке большого количества записей из FB  [new]
Гаджимурадов Рустам
Member

Откуда:
Сообщений: 62404
WНаталья> И да, я делаю ограничение выборки,
WНаталья> например, первые 100. Но даже это не помогает.

Код показывай.


WНаталья> Вернее помогает, но ненадолго.

А потом - ррррраз - и всё?
Ты программистка или как?
Память освобождаешь или
каждый раз новую выделяешь?

Posted via ActualForum NNTP Server 1.5

16 фев 21, 18:47    [22281832]     Ответить | Цитировать Сообщить модератору
 Re: Проблема при вставке большого количества записей из FB  [new]
WНаталья
Member

Откуда: Мурманск
Сообщений: 68
Нет, не программистка. Когда задание давали, выглядело легко. Перелить фото из одной БД в другую. А потом выясняется.....

procedure TForm1.btnLoadClick(Sender: TObject);

begin

qGET_PERS_FOTO.Open;
qGET_PERS_FOTO.Insert;
FDQuery1.first;

while not (FDQuery1.Eof) do

begin

 try

    qGET_PERS_FOTO.FindField('foto').Assign(FDQuery1.FieldByName('foto'));
    qGET_PERS_FOTO.FindField('pers_id').Assign(FDQuery1.FieldByName('pers_id'));
    qGET_PERS_FOTO.Post;

    Except
     On e: Exception Do
     begin
       if Pos('unique constraint', e.Message)> 0 then
       begin
         Break
       end;
    end;
 end;
16 фев 21, 19:05    [22281842]     Ответить | Цитировать Сообщить модератору
 Re: Проблема при вставке большого количества записей из FB  [new]
ъъъъъ
Member

Откуда:
Сообщений: 1769
Вот распрыгалась, как павианы в брачный период.
16 фев 21, 19:06    [22281843]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: Ctrl  назад   1 [2] 3   вперед  Ctrl      все
Все форумы / Delphi Ответить