Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Подключение VFP8 к Interbase
|
|||
|---|---|---|---|
|
#18+
У меня такая проблемка. Есть база на Interbase, я соединяюсь через Firebird ODBC Driver Делаю простую выборку базы в курсор. Табличка на 10 тыс. записей Запрос идет около 10 сек. !!! Аналогично делаю запрос в PARADOX 9 через BDE там курсор получается моментально! Я так думаю в VFP медленно из-за преобразования форматов полей таблицы, конвертирования данных . Может у кого есть опыт работы с ibase из VFP. Может какие другие способы связи попробовать (ADO OLE DB ???) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2004, 11:14 |
|
||
|
Подключение VFP8 к Interbase
|
|||
|---|---|---|---|
|
#18+
У меня такая проблемка. Есть база на Interbase, я соединяюсь через Firebird ODBC Driver Делаю простую выборку базы в курсор. Табличка на 10 тыс. записей Запрос идет около 10 сек. !!! Аналогично делаю запрос в PARADOX 9 через BDE там курсор получается моментально! Я так думаю в VFP медленно из-за преобразования форматов полей таблицы, конвертирования данных . Может у кого есть опыт работы с ibase из VFP. Может какие другие способы связи попробовать (ADO OLE DB ???) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2004, 11:22 |
|
||
|
Подключение VFP8 к Interbase
|
|||
|---|---|---|---|
|
#18+
для делфи парадокс и интербейс почти родные форматы поэтому и быстро а вы не пробывали в бде из интербейса в дбф гнать и вообще скорость формирования определяеться качеством одбс драйверов если делфи делает такие дрова так что вы хотите работайте на делфи с родными дровами а если нужен фокспро то может лучше скл_сервер ???? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2004, 12:09 |
|
||
|
Подключение VFP8 к Interbase
|
|||
|---|---|---|---|
|
#18+
leafдля делфи парадокс и интербейс почти родные форматы поэтому и быстро а вы не пробывали в бде из интербейса в дбф гнать и вообще скорость формирования определяеться качеством одбс драйверов если делфи делает такие дрова так что вы хотите работайте на делфи с родными дровами а если нужен фокспро то может лучше скл_сервер ???? По моему вопрос стоял так- "работа из VFP c IBASE", то что на дельфе и парадоксе с родной sql ,быстрее - это и коню понятно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2004, 12:46 |
|
||
|
Подключение VFP8 к Interbase
|
|||
|---|---|---|---|
|
#18+
ну не знаю только адо вам вряд ли поможет может драйвер сменить ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2004, 13:15 |
|
||
|
Подключение VFP8 к Interbase
|
|||
|---|---|---|---|
|
#18+
Пинал как-то Interbase c дравйвером от FireBird - все нормально бегало. Боюсь - вечный глюк с включенными Tracing в ODBC Sources Панели управления ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2004, 13:23 |
|
||
|
Подключение VFP8 к Interbase
|
|||
|---|---|---|---|
|
#18+
piva вечный глюк с включенными Tracing в ODBC Sources Панели управления Спасибо за отклики :) А можно поподробнее что за глюки и как избавиться? У меня на вкладке Tracing в ODBC вроде остановлен ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2004, 14:22 |
|
||
|
Подключение VFP8 к Interbase
|
|||
|---|---|---|---|
|
#18+
Какой такой глюк - ну если Tracing выключен - значит не то. Да и нету у меня сейчас ни Interbase ни ODBC драйвера для него. Но точно помню - тормозов до такой степени (10 сек на 10 тыс записей ) не было ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2004, 14:27 |
|
||
|
Подключение VFP8 к Interbase
|
|||
|---|---|---|---|
|
#18+
Может это я где-то туплю вот , что я делаю: gnConnHandle = SQLCONNECT('mybase', '', '') lCommand= 'select * from tabledata' lResult = SQLEXEC(gnConnHandle, lCommand,"tabledata") Во время выполнения сообщение выполняемого запроса 'Executing remote... Press ESC to cancel' после ~10 секунд получаю курсор Типы полей IBASE используемые в табличке: integer numeric (15,2) varchar(255) date после получения результата поле varchar(255) становиться memo, а date -> datetime Мож с этим что связано? Кстати я раньше пользовался утилиткой IBAdmin для получения dbf и по скорости конвертирования очень похожие результаты. Я даже вижу колличество конвертируемых записей по 300-600 в секунду Да , еше база на ibase с довольно сложной структурой и на эту табличку навешано куча связей, индексов, триггеров и т.п. Может это влияет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2004, 16:42 |
|
||
|
Подключение VFP8 к Interbase
|
|||
|---|---|---|---|
|
#18+
Сервер FB1.5 (локально) + VFP80 + ODBC Easysoft IB60 Cгенерил тестовую таблицу на 100000 записей (20 полей). Выборка (через SP) 3-х полей: Всех записей- 3 сек. 10000 записей- <1сек (извиняюсь, засекал по секундомеру) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2004, 16:45 |
|
||
|
Подключение VFP8 к Interbase
|
|||
|---|---|---|---|
|
#18+
vl2000Сервер FB1.5 (локально) + VFP80 + ODBC Easysoft IB60 (извиняюсь, засекал по секундомеру) А если сервак на другой машине? Сколько будет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2004, 17:54 |
|
||
|
Подключение VFP8 к Interbase
|
|||
|---|---|---|---|
|
#18+
На сервере проверю завтра на работе. Не думаю, что время будет сильно отличаться, а может и уменьшится :) Я, кстати, сделал поле CHAR(500)- и на скорость выборки это не повлияло (из Фокса). Запусти свой запрос напрямую на сервере (например из IBExpert). Посмотри, какое будет время выполнения запроса. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2004, 21:05 |
|
||
|
Подключение VFP8 к Interbase
|
|||
|---|---|---|---|
|
#18+
Hi Трехсотый! Ни один SQL-сервер не рассчитан на то что его будут ТАК использовать. Какой смысл вообще в сервере, если ты не работать его заставляешь, а банально качать инфу туда-сюда? Если ты ТАК хочешь работать - переходи на технологию файл-сервера. В клиент-сервере принято выбирать лишь минимально необходимый набор записей. Я НИКОГДА не поверю что тебе постоянно нужно вынимать оттуда по 10000 записей. Теперь по поводу BDE - а с чего ты взял что по BDE сразу вынимаются все 10000 записей? Он как раз так не делает, а забирает их порциями, причём весьма себе скромными! Например чтобы показать в гриде вмещающиеся там 10-20 записей. Ну а уж если его напрягут гнать все 10000 скажем в отчёт, или просто в файл какой - думаю он будет ненамного быстрее работать, даже с учётом "прямого" доступа к серверу. Posted via ActualForum NNTP Server 1.1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2004, 22:40 |
|
||
|
Подключение VFP8 к Interbase
|
|||
|---|---|---|---|
|
#18+
Проверил на сервере. 10000 записей < 1 сек 100000 - примерно 2 сек. Только у меня выборка организована по другому. На сервере- хранимая процедура. С клиента вызываю эту процедуру- она возвращает записи. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.11.2004, 08:20 |
|
||
|
Подключение VFP8 к Interbase
|
|||
|---|---|---|---|
|
#18+
Кажется я плохо описал свою проблему. vl2000 Запусти свой запрос напрямую на сервере (например из IBExpert). Посмотри, какое будет время выполнения запроса. IBExpert это не VFP8 Меня интересует курсор полученный в VFP8 Я же говорю, в PARADOX 9 сделал алиас в BDE на ту же базу получил результат такого-же запроса моментально. В IBADMIN эта таблица тоже открывается моментально, а тормоза начинаются при конвертировании ее в dbf. Это очень похоже на получение курсора в VFP8 через ODBC из табл. INTERBASE ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.11.2004, 11:24 |
|
||
|
Подключение VFP8 к Interbase
|
|||
|---|---|---|---|
|
#18+
Igor Korolyov Hi Трехсотый! Ни один SQL-сервер не рассчитан на то что его будут ТАК использовать. Какой смысл вообще в сервере, если ты не работать его заставляешь, а банально качать инфу туда-сюда? Если ты ТАК хочешь работать - переходи на технологию файл-сервера. В клиент-сервере принято выбирать лишь минимально необходимый набор записей. Posted via ActualForum NNTP Server 1.1 Ну, во первых инфу качаю только "сюда" ;) Данные нужны для построения отчета. Причем все! данные! Igor Korolyov Я НИКОГДА не поверю что тебе постоянно нужно вынимать оттуда по 10000 записей. Posted via ActualForum NNTP Server 1.1 Почему??? Формируешь отчет и выгребаешь все данные за год. Это один вариант самый простой. А теперь представь существуют 2 задачи одна на fox другая на IBASE, нужен анализ данных из этих задач, причем основное поле с кодом по которому строится отчет в одной задаче символьного типа в другой числового. Хочешь не хочешь придется выгружать всю табл. во временный курсор и приводить к общему типу данных , группировать объединять, суммировать и вываливать в общий отчет. Могу придумать еще варианты.... Потом 10 000 записей это мелочь для простых запросов. Что доказывает работа даже через BDE из того же PARADOXA или DELPHI , не говоря о других способах доступа. И VFP их так же должен глотать, но в чем причина, я подозреваю в конвертации данных? Igor Korolyov Теперь по поводу BDE - а с чего ты взял что по BDE сразу вынимаются все 10000 записей? Он как раз так не делает, а забирает их порциями, причём весьма себе скромными! Например чтобы показать в гриде вмещающиеся там 10-20 записей. Ну а уж если его напрягут гнать все 10000 скажем в отчёт, или просто в файл какой - думаю он будет ненамного быстрее работать, даже с учётом "прямого" доступа к серверу. Posted via ActualForum NNTP Server 1.1 Так я и делаю для отчета запрос и в PARADOX табл ANSVER (наш курсор) получается моментально, и на диск сохраняется моментально. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.11.2004, 12:08 |
|
||
|
Подключение VFP8 к Interbase
|
|||
|---|---|---|---|
|
#18+
Ну если ты уверен, что проблема не в IB, то попробуй другой ODBC. Например Easysoft или Gemini. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.11.2004, 12:14 |
|
||
|
Подключение VFP8 к Interbase
|
|||
|---|---|---|---|
|
#18+
кажеться вы нам голову морочите что за отчет на 10000 строк кто его анализирует его даже в ексель бы не стал пихать не захотел бы связываться что-то тут не так может способ всетаки не тот а ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.11.2004, 12:17 |
|
||
|
Подключение VFP8 к Interbase
|
|||
|---|---|---|---|
|
#18+
>leaf Зачем же сразу "голову морочите"? Трехсотый не говорил, что он ВСЕ 10000 строк выводит в отчет. Они нужны ДЛЯ построения отчета. По ним делается анализ и строится отчет. Причем этот анализ нельзя сделать на стороне SQL-серверf, т.к. в нем участвуют данные из другой программы(таблицы). Очень даже распространненный вариант. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.11.2004, 12:24 |
|
||
|
Подключение VFP8 к Interbase
|
|||
|---|---|---|---|
|
#18+
vl2000Ну если ты уверен, что проблема не в IB, то попробуй другой ODBC. Например Easysoft или Gemini. Уже попробовал Gemini , таже ситуация. В общем не стоит акцентировать внимание на 10 000 записей. Лучше узнать почему такая разница во времени при обработке совершенно одинаковых запросов разными СУБД. Да забыл сказать: В общем, дальше с полученным курсором VFP работает моментально, все остальные операции по преобразованию (гораздо трудоемкие) пролетают незаметно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.11.2004, 13:07 |
|
||
|
Подключение VFP8 к Interbase
|
|||
|---|---|---|---|
|
#18+
leafкажеться вы нам голову морочите что за отчет на 10000 строк кто его анализирует его даже в ексель бы не стал пихать не захотел бы связываться что-то тут не так может способ всетаки не тот а Нет не морочу, в этом случае получается в итоге 2тыс. записей. Код структуированный по нему просчитываются все промежуточные итоги, которые тоже попадают в отчет. А есть отчеты импорт. в Excel и по 20 тыс. строк. И поверьте, анализируют, еще как анализируют!!!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.11.2004, 13:17 |
|
||
|
Подключение VFP8 к Interbase
|
|||
|---|---|---|---|
|
#18+
Посмотри какие настройки в TOOLS-OPTIONS-REMOTE DATA У меня: Record to fetch at a time стоит ALL Maximum record to fetch стоит ALL Asynchronous execution флаг сброшен. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.11.2004, 13:24 |
|
||
|
Подключение VFP8 к Interbase
|
|||
|---|---|---|---|
|
#18+
vl2000 У меня: Record to fetch at a time стоит ALL Maximum record to fetch стоит ALL Asynchronous execution флаг сброшен. Сделал тоже самое результат тот же ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.11.2004, 13:47 |
|
||
|
Подключение VFP8 к Interbase
|
|||
|---|---|---|---|
|
#18+
ТрехсотыйУ меня такая проблемка. Есть база на Interbase, я соединяюсь через Firebird ODBC Driver Делаю простую выборку базы в курсор. Табличка на 10 тыс. записей Запрос идет около 10 сек. !!! Аналогично делаю запрос в PARADOX 9 через BDE там курсор получается моментально! Я так думаю в VFP медленно из-за преобразования форматов полей таблицы, конвертирования данных . Может у кого есть опыт работы с ibase из VFP. Может какие другие способы связи попробовать (ADO OLE DB ???) У меня была такая же проблема, только несколько с другой стороны: мне надо было данные из Oracle передать в формат dbf при помощи C++Builder'a. Так вот, подобное преобразование 8 тыс. записей через МS Jet OLEDB 4.0 и команду типа "insert into... values ..." заняло около 10 минут (!). Преобразование тех же записей при помощи "append" и библиотеки (еще ДОСовской) работающей с образом таблицы в памяти (типа как это делает Фокс) занимает менее 2 секунд (!). Так что проблема все-таки в ODBC и конвертировании данных... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.11.2004, 13:54 |
|
||
|
Подключение VFP8 к Interbase
|
|||
|---|---|---|---|
|
#18+
Ладно, попробуй передать на выполнение запрос: lCommand= 'select my_field from tabledata' где my_field - какое то поле в таблице (т.е. выбери только одно поле по которому нет преобразований, например ключевое). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.11.2004, 14:00 |
|
||
|
|

start [/forum/topic.php?fid=41&msg=32784214&tid=1595385]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
65ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
61ms |
get tp. blocked users: |
1ms |
| others: | 245ms |
| total: | 414ms |

| 0 / 0 |
