Модераторы: Akella
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Interbase не видит функции 
V
    Опции темы
Olesya
Дата 15.2.2011, 19:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 55
Регистрация: 21.11.2007

Репутация: нет
Всего: нет



Развернула базу на другом компе. При запуске совершенно любого запроса (в т.ч. не использующего внешние функции) возникает ошибка

General SQL error.
invalid request BLR at offset 83
function MOD_RTLX(моя внешняя функция) is not defined
module name or entrypoint could not be found.

С чем это может быть связано?

PM MAIL   Вверх
Akina
Дата 15.2.2011, 21:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 3
Всего: 454



Не понял... в этой БД эта функция использовалась (хоть где-то?). Если да - волоките DLL с ней на сервер и грузите.
Заодно проверьте, что нормально грузятся все системные либы (gds32 там...).


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
Olesya
Дата 16.2.2011, 11:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 55
Регистрация: 21.11.2007

Репутация: нет
Всего: нет



да, это функции этой БД, их там много. если писать разные запросы, то название функции в ошибке меняется (похоже на рандом  smile ). Можно, пожалуйста, поподробней про "грузите"? DLL с ними я положила в папку c:\IBServer\UDF. Как проверить что системные либы грузятся?
PM MAIL   Вверх
Akina
Дата 16.2.2011, 11:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 3
Всего: 454



Цитата(Olesya @  16.2.2011,  12:00 Найти цитируемый пост)
Как проверить что системные либы грузятся? 

Посмотрите список загруженных библиотек... в сведениях о системе, например.


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
Olesya
Дата 16.2.2011, 11:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 55
Регистрация: 21.11.2007

Репутация: нет
Всего: нет



ситуация немножко прояснилась. не отрабатываются только запросы к таблицам, которые являются представлениями, т.е. эти функции там таки используются. я даже не могу на просмотр открывать такие таблицы. ошибка та же самая. может dll не там лежит или ее каким то особым образом надо подгружать?
PM MAIL   Вверх
Akina
Дата 16.2.2011, 11:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 3
Всего: 454



Цитата(Olesya @  16.2.2011,  12:49 Найти цитируемый пост)
может dll не там лежит или ее каким то особым образом надо подгружать? 

Наверное, надо почитать справку по этому делу... я думаю, что использование УДФ-ки должно быть отражено в конфиге загружаемого инстанса... хотя и не уверен до конца.


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
Deniz
Дата 16.2.2011, 14:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1251
Регистрация: 16.10.2004
Где: Новый Уренгой

Репутация: 22
Всего: 44



Olesya, посмотри описание функции при создании, может есть проблема с именованием или путем.
Про InterBase не скажу (кстати неплохо бы версию указать).
Для FireBird dll-ка кидается в нужную папку (зависит от версии)
В конфиге FB нужно разрешить использование dll см. параметр UdfAccess


--------------------
"Для того чтобы сделать шаг вперед, достаточно пинка сзади" (с)
PM ICQ   Вверх
Olesya
Дата 16.2.2011, 15:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 55
Регистрация: 21.11.2007

Репутация: нет
Всего: нет



у меня INTERBASE 7.5. это я настраиваю комп коллеги, все делаю, как у меня, да видимо не все... и dll тоже взяла у себя, т.е. с ней все в порядке
PM MAIL   Вверх
Akella
Дата 16.2.2011, 15:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

Репутация: 20
Всего: 329



Цитата(Olesya @  15.2.2011,  19:23 Найти цитируемый пост)
function MOD_RTLX(моя внешняя функция) is not defined
module name or entrypoint could not be found.

С чем это может быть связано?

И ещё UDF нужно подключить. 1 раз выполнить SQL код. Какой именно и как - сморите в справке. Справка есть по идее в папке установки.

Добавлено через 2 минуты и 36 секунд
В Firebird примерно так
Код

DECLARE EXTERNAL FUNCTION ascii_char
    INTEGER
    RETURNS CSTRING(1) FREE_IT
    ENTRY_POINT 'IB_UDF_ascii_char' MODULE_NAME 'ib_udf';

PM MAIL   Вверх
Olesya
Дата 16.2.2011, 16:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 55
Регистрация: 21.11.2007

Репутация: нет
Всего: нет



ничего не выходит. везде, где идет речь об INTERBASE, написано только, что нужно положить dll в папку UDF, и все, больше никаких действий

Это сообщение отредактировал(а) Olesya - 16.2.2011, 16:57
PM MAIL   Вверх
Akella
Дата 17.2.2011, 10:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

Репутация: 20
Всего: 329



Ну сама подумай, откуда Серверу INTERBASE знать какие функции ты хочешь использовать. А если в эту папку понапихать 100000 DLL-ок? И INTERBASE при подключении к базе начнёт проверять все эти библиотеки на какие функции с параметрами??? smile 
Так что читай документацию.
PM MAIL   Вверх
Olesya
Дата 18.2.2011, 10:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 55
Регистрация: 21.11.2007

Репутация: нет
Всего: нет



проблема решена. посмотрела свою библиотеку Dependency Walker'ом  и увидела, что она требует еще два файла. Положила их в папку system32 и все работает. всем спасибо smile
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Interbase"
Alex

Обязательно указание:

1. Версию InterBase (Firebird, Yaffil)

2. Способа доступа (ADO, BDE, IBX и т.д.)

  • КАК ПРАВИЛЬНО ОФОРМИТЬ КОД - ЗДЕСЬ
  • КАК ПРАВИЛЬНО УКАЗАТЬ ТЕКСТ ОШИБКИ - ЗДЕСЬ
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • FAQ раздела лежит здесь!

Если Вам понравилась атмосфера форума, заходите к нам чаще! С Уважением, Akella.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Firebird, Interbase | Следующая тема »


 




[ Время генерации скрипта: 0.0513 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.