Доступ к базе на С под Linux

IBX, FIBPlus, UIB, ADO, .Net и прочее-прочее-прочее, в общем все, что относится к созданию приложений, работающих с InterBase, Firebird и Yaffil - клиент-серверных, трехзвенных, консольных и т.п.

Модератор: kdv

Ответить
bal
Сообщения: 8
Зарегистрирован: 18 апр 2006, 11:57

Доступ к базе на С под Linux

Сообщение bal » 18 апр 2006, 12:41

Есть ли РАБОТАЮЩИЕ примеры на С под Linux ? Смотрел пример в книге "Мир IB",но на прилагаемом диске их нет.Скачал библиотеку FireFoot, но опять же без примеров. Может у кого-нибудь есть соответствующий опыт и исходники примеров ? Спасибо ! Сергей

hvlad
Разработчик Firebird
Сообщения: 1244
Зарегистрирован: 21 мар 2005, 10:48

Сообщение hvlad » 18 апр 2006, 22:34

firebird/examples для кого писаны ?

bal
Сообщения: 8
Зарегистрирован: 18 апр 2006, 11:57

Сообщение bal » 19 апр 2006, 11:14

hvlad писал(а):firebird/examples для кого писаны ?
А ты сам пробовал их компилировать, только честно ?

Вот я скомпилировал пример:

#! /bin/sh
gcc /opt/firebird/lib/libfbclient.so.1.5.3 api3.c
ISC_USER=sysdba
ISC_PASSWORD=xxxxxxxxx
ISC_DATABASE=localhost:/opt/firebird/examples
./a.out

и получаю

Your user name and password are not defined. Ask your database administrator to set up a Firebird login.

Что не так ? Может подскажешь ?

Ivan_Pisarevsky
Заслуженный разработчик
Сообщения: 644
Зарегистрирован: 15 фев 2005, 11:34

Сообщение Ivan_Pisarevsky » 19 апр 2006, 12:47

Тебе ж на аглицком по белому сказано "пароль не тот". на линуксах "masterkey" приказал долго жить ужо давненько весьма... :) вдумчиво посмотри на каталог куды файрберд поставил, никакой файл на пароль не похож? :lol:

hvlad
Разработчик Firebird
Сообщения: 1244
Зарегистрирован: 21 мар 2005, 10:48

Сообщение hvlad » 19 апр 2006, 13:29

bal писал(а):А ты сам пробовал их компилировать, только честно ?
Отгадай с 3-х раз
bal писал(а):Your user name and password are not defined. Ask your database administrator to set up a Firebird login.

Что не так ? Может подскажешь ?
Очень, очень сложная и непонятная фраза. Впервые вижу. У кого бы ещё спросить ?

bal
Сообщения: 8
Зарегистрирован: 18 апр 2006, 11:57

Сообщение bal » 19 апр 2006, 13:55

Ivan_Pisarevsky писал(а):Тебе ж на аглицком по белому сказано "пароль не тот". на линуксах "masterkey" приказал долго жить ужо давненько весьма... :) вдумчиво посмотри на каталог куды файрберд поставил, никакой файл на пароль не похож? :lol:
Да с этим все ясно, спасибо ! Тут в чем-то другом фишка. Из-под винды доступ есть, пароль работает. А программа не может. Хрен знает, не могу понять :-(

Ivan_Pisarevsky
Заслуженный разработчик
Сообщения: 644
Зарегистрирован: 15 фев 2005, 11:34

Сообщение Ivan_Pisarevsky » 19 апр 2006, 14:13

localhost:/opt/firebird/examples
Тебе не кажется , что тут файла БД не хватает?

Ты уверен, что винда именно на этот сервер ходит?

На сервере только один файрберд поставлен? точно больше никаких интербейзов или других версий ФБ не водилось? а то мож файл с текстами ошибок от другой версии и на самом деле сервер пытается сказать что нифига базу не нашел...

bal
Сообщения: 8
Зарегистрирован: 18 апр 2006, 11:57

Сообщение bal » 19 апр 2006, 14:15

bal писал(а):
Ivan_Pisarevsky писал(а):Тебе ж на аглицком по белому сказано "пароль не тот". на линуксах "masterkey" приказал долго жить ужо давненько весьма... :) вдумчиво посмотри на каталог куды файрберд поставил, никакой файл на пароль не похож? :lol:
Да с этим все ясно, спасибо ! Тут в чем-то другом фишка. Из-под винды доступ есть, пароль работает. А программа не может. Хрен знает, не могу понять :-(
Тут еще такая фишка. В файле SYSDBA.password переменные
ISC_USER=sysdba
ISC_PASSWD=xxxxxx

а в readme

ISC_USER - A valid username on the server.
ISC_PASSWORD - The password for the above user.

Кому верить ? Я и так и этак пробовал. Все равно не работает :-(

bal
Сообщения: 8
Зарегистрирован: 18 апр 2006, 11:57

Сообщение bal » 19 апр 2006, 14:24

Ivan_Pisarevsky писал(а):localhost:/opt/firebird/examples
Тебе не кажется , что тут файла БД не хватает?

Ты уверен, что винда именно на этот сервер ходит?

На сервере только один файрберд поставлен? точно больше никаких интербейзов или других версий ФБ не водилось? а то мож файл с текстами ошибок от другой версии и на самом деле сервер пытается сказать что нифига базу не нашел...
Да нет, все нормально. В Expert'е указаны IP сервера и путь /opt/firebird/examples/employee.fdb. Все открывается на ура ! Может что-то с владельцем employee.fdb. У меня владелец root, группа firedird. Пробовал root.root - тоже не работает. А винды и так и этак открывают.

Ivan_Pisarevsky
Заслуженный разработчик
Сообщения: 644
Зарегистрирован: 15 фев 2005, 11:34

Сообщение Ivan_Pisarevsky » 20 апр 2006, 08:51

>Кому верить ? Я и так и этак пробовал. Все равно не работает
Как только сервер установлен имеется ОДИН пользователь администратор этого сервера, именумый SYSDBA, и пароль тут же в файлике приложен. Потом SYSDBA может насоздавать столько юзеров, сколько нужно. это чистой воды RTFM. :)

>У меня владелец root, группа firedird.
Владельцем файла БД должен быть тот юзер, от имени которого запущен ФБ, по-умолчанию это firebird. И соответственно права на доступ "600", хотя сейчас можещь для пробы поставить "666", все равно база игровая.

Локально из-под isql к базе можешь подключиться?
gbak-ом забэкапить можешь?

>Да нет, все нормально.
Интересное понимание нормальности...

Alex03
Сообщения: 15
Зарегистрирован: 16 ноя 2005, 19:02

Re: Доступ к базе на С под Linux

Сообщение Alex03 » 24 апр 2006, 21:47

bal писал(а):Есть ли РАБОТАЮЩИЕ примеры на С под Linux ? Смотрел пример в книге "Мир IB",но на прилагаемом диске их нет.Скачал библиотеку FireFoot, но опять же без примеров. Может у кого-нибудь есть соответствующий опыт и исходники примеров ? Спасибо ! Сергей
А С++ не катит?
Если катит то IBPP - вполне рабочий.

Или обязательно на их API надо?

Ответить