IBX, FIBPlus, UIB, ADO, .Net и прочее-прочее-прочее, в общем все, что относится к созданию приложений, работающих с InterBase, Firebird и Yaffil - клиент-серверных, трехзвенных, консольных и т.п.
Модератор: kdv
-
mhalion
- Сообщения: 23
- Зарегистрирован: 18 ноя 2007, 18:38
Сообщение
mhalion » 19 июн 2008, 10:16
Для взаимодействия с базой InterBase 7.5 использую ibase API:
isc_compile_request, isc_start_and_send. Т.е. процедуркой isc_compile_request компилирую BLR запрос и далее выполняю его isc_start_and_send'м.
Проблема в том что я не могу разобрать с синтаксисом BLR. Может существует какая-нибудь утилита для формирования BLR из SQL запроса? Я попробовал использовать BLR из procedure который храниться в RDB$PROCEDURES, но он не выполняет, т.е. выполняется, но ничего не происходит. У кого есть подскажите доки по BLR.
-
hvlad
- Разработчик Firebird
- Сообщения: 1244
- Зарегистрирован: 21 мар 2005, 10:48
Сообщение
hvlad » 19 июн 2008, 11:02
Если не можешь понять BLR, то чего пользуешь низкоуровневое API ?
Нужен тебе ESQL и gpre.
-
mhalion
- Сообщения: 23
- Зарегистрирован: 18 ноя 2007, 18:38
Сообщение
mhalion » 19 июн 2008, 11:07
hvlad писал(а):Если не можешь понять BLR, то чего пользуешь низкоуровневое API ?
Нужен тебе ESQL и gpre.
Дело в том что я пишу не с нуля, а у меня уже есть определенная часть написанная как раз с помощью BLR. Так есть что-нибудь по BLR???
-
hvlad
- Разработчик Firebird
- Сообщения: 1244
- Зарегистрирован: 21 мар 2005, 10:48
Сообщение
hvlad » 19 июн 2008, 11:24
mhalion писал(а):hvlad писал(а):ESQL и gpre.
Дело в том что я пишу не с нуля, а у меня уже есть определенная часть написанная как раз с помощью BLR. Так есть что-нибудь по BLR???
Чукча не читатель ?
-
mhalion
- Сообщения: 23
- Зарегистрирован: 18 ноя 2007, 18:38
Сообщение
mhalion » 19 июн 2008, 11:33
hvlad писал(а):Чукча не читатель ?
Спасибо за подсказку. Но не могли бы вы подсказать насчет дальнейших действий с Embedded SQL и gpre??? Как с их помощью получить необходимые BLR???
-
WildSery
- Заслуженный разработчик
- Сообщения: 1738
- Зарегистрирован: 05 июн 2006, 16:19
Сообщение
WildSery » 19 июн 2008, 11:40
mhalion писал(а):насчет дальнейших действий с Embedded SQL и gpre???
Я бы начал с чтения документации по ним.
На этом сайте, в разделе "документация".
-
mhalion
- Сообщения: 23
- Зарегистрирован: 18 ноя 2007, 18:38
Сообщение
mhalion » 19 июн 2008, 11:45
WildSery писал(а):Я бы начал с чтения документации по ним.
На этом сайте, в разделе "документация".
Дело не в том что я не знаю что это такое, а в том что я не понимаю как они мне помогут получить BLR. Может я и не собираюсь разбираться в тонкостях... Вот, например, причем тут Embedded SQL? Он вообще ненужен. Я не знаю как перевести обыкновенный SQL запрос в BLR. Вот и всё.
-
mhalion
- Сообщения: 23
- Зарегистрирован: 18 ноя 2007, 18:38
Сообщение
mhalion » 19 июн 2008, 11:47
mhalion писал(а):Дело не в том что я не знаю что это такое, а в том что я не понимаю как они мне помогут получить BLR. Может я и не собираюсь разбираться в тонкостях... Вот, например, причем тут Embedded SQL? Он вообще ненужен. Я не знаю как перевести обыкновенный SQL запрос в BLR. Вот и всё.
Изыните. Погоречился.
-
WildSery
- Заслуженный разработчик
- Сообщения: 1738
- Зарегистрирован: 05 июн 2006, 16:19
Сообщение
WildSery » 19 июн 2008, 11:59
mhalion писал(а):Я не знаю как перевести обыкновенный SQL запрос в BLR. Вот и всё.
Как раз с помощью GPRE
-
mhalion
- Сообщения: 23
- Зарегистрирован: 18 ноя 2007, 18:38
Сообщение
mhalion » 19 июн 2008, 12:37
Подскажите по компилированию SQL запроса с помощью gpre.
Не нашел ниодного примера компилирования SQL запроса. gpre позволяет компилировать программы написанные на каком-то базовом языке со встроенными SQL инструкциями и я получаю просто exe.
Пусть у меня есть база c:\ib\sample.gdb
Есть запрос SELECT * FROM SAMPLE_TBL
Как будет выглядить файл sample.e и какой инструкцией его скомпилить?
-
kdv
- Forum Admin
- Сообщения: 6595
- Зарегистрирован: 25 окт 2004, 18:07
Сообщение
kdv » 19 июн 2008, 12:58
замучил, ей-богу
gpre не производит exe. gpre это препроцессор из *.e в *.c. Поэтому "не нашел ни одного примера" - гон. Я тебе уже указал на папку examples.
Там даже есть ПОДПАПКА GPRE с этими файлами (например, чем тебе не понравился stat2.e ?).
на каком-то базовом языке
это и есть embedded sql.
-
mhalion
- Сообщения: 23
- Зарегистрирован: 18 ноя 2007, 18:38
Сообщение
mhalion » 19 июн 2008, 13:14
kdv писал(а):замучил, ей-богу
АХАХА!:) Ну а как ещё то? Я уже не могу с этими blr'ами, InterBase'ами и т.д. ДА нашел я эту папку. ПРосто не компилится:
stat2.e и employee.gdb копирую в одну папку. Выполняю gpre -database employee.gdb stat2.e и получаю unavailable database.
-
belov-evgenii
- Сообщения: 52
- Зарегистрирован: 28 сен 2007, 10:19
Сообщение
belov-evgenii » 19 июн 2008, 13:23
mhalion писал(а):Выполняю gpre -database employee.gdb stat2.e и получаю unavailable database.
И под какой учеткой оно подключается?
-
mhalion
- Сообщения: 23
- Зарегистрирован: 18 ноя 2007, 18:38
Сообщение
mhalion » 19 июн 2008, 13:58
gpre -database localhost:D:\employee.gdb -user SYSDBA -password masterkey stat2.e и вылезает "Your user name and password are not defined. Ask your database administrator to
set up an InterBase login". Хотя если регить базу в IBConsole или в IBExpert, то всё нормально регится
-
hvlad
- Разработчик Firebird
- Сообщения: 1244
- Зарегистрирован: 21 мар 2005, 10:48
Сообщение
hvlad » 19 июн 2008, 14:16
Всё это описано в соотв. доке.
У тебя легальный IB 7.5 ? Открой книжицу, и почитай.
-
kdv
- Forum Admin
- Сообщения: 6595
- Зарегистрирован: 25 окт 2004, 18:07
Сообщение
kdv » 19 июн 2008, 14:17
какие мучения-то...
попробуй в консоли, где ГПРЕ запускаешь, перед запуском сделать
set ISC_USER=SYSDBA
set ISC_PASSWORD=masterkey
а из командной строки юзера и пароль убрать
-
mhalion
- Сообщения: 23
- Зарегистрирован: 18 ноя 2007, 18:38
Сообщение
mhalion » 19 июн 2008, 14:23
Гигантское спасибо за помощ! Я знал что вы хорошие и добрые:) Просто на самом деле долго бился уже над этим и поэтому тяжко. Ещё раз спасибо дальше я сам. уффф
-
kdv
- Forum Admin
- Сообщения: 6595
- Зарегистрирован: 25 окт 2004, 18:07
Сообщение
kdv » 19 июн 2008, 14:33
гпре - это ж фактически атавизьм. Если не для исходников сервера, то для создания приложений - почти на 99%. Отсюда всякие странности.