Форум программистов, компьютерный форум, киберфорум
C++ Builder: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.97/34: Рейтинг темы: голосов - 34, средняя оценка - 4.97
1 / 1 / 1
Регистрация: 06.06.2009
Сообщений: 116

Доступ к БД на сервере с удаленного ПК (Firebird 2.1.7)

16.02.2017, 22:27. Показов 7168. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте.
У меня довольно простая, на первый взгляд, задача: на сервере стоит БД, на ЭВМ в локальной сети я ставлю свою программу и хочу через неё открыть БД. Все мои ухищрения пока не увенчались успехом, мой клиент не подключается к БД. Что я сделал:
1. На сервере в расшаренной папке лежим файл БД и установлен Firebird 2.1.7 SuperServer.
2. На клиентской машине стоит тот же Firebird.
3. В своей программе я создаю IBDatabase, IBTransaction и IBDataSet. У IBDatabase я ставлю Connection - Remoute, Protocol: TCP.
4. Затем я пишу:
C++ (Qt)
1
2
3
4
5
6
7
8
9
        
        IBDatabase1->DatabaseName = DataBaseFileName;
        IBDatabase1->Params->Clear();
        IBDatabase1->Params->Add("user_name=SYSDBA");
        IBDatabase1->Params->Add("password=masterkey";
        IBDatabase1->Params->Add("lc_ctype=WIN1251");   
 
        IBDataSet1->SelectSQL->Text = "SELECT * FROM REPORT";
        IBDataSet1->Open();
На сервере WINDOWS 2008 Server. На клиенте Win7 64x.
При этом DataBaseFileName="\\192.168.1.200\Data\d atabase.fdb". Папка D:\Data на сервере расшарена, и на клиенте подключена, как сетевой диск. Но любопытно то, что если я пишу DataBaseFileName="\\192.168.1.200\D:\Dat a\database.fdb" клиент подключается (правда, работу не проверял). Но это какая-то странная строка поиска файла БД...
Кроме этого, я поставил на клиент SQL Manager for InterBase and Firebird. Как я не настраивал регистрацию базы данных (и localhost и имя сервера и протокол TCP\IP) ни в какую он с БД не коннектился.
При этом копирую БД на машину клиента - всё сразу подключается и работает. А на сервере ни в какую. Что я делаю не так?
Спасибо.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
16.02.2017, 22:27
Ответы с готовыми решениями:

Обработчик событий удаленного события Firebird
В c# пытаюсь обработать событие post_event 'new_g'; Есть код FbRemoteEvent revent = new FbRemoteEvent(fb); ...

Прикрутить файл БД (.GDB) FireBird с удаленного сервера
Здравствуйте Уважаемые. Долго бродил на просторах интернета, пока не отчаялся совсем.. Суть вопроса вот в чем. Есть база FireBird,...

Настройка удаленного доступа на сетевую папку на сервере
Приветствую знатоков! Нарезали задачу - настроить удаленный доступ из дома на сетевую папку, которая находится на сервере, который стоит в...

2
 Аватар для Dinkin
783 / 556 / 136
Регистрация: 31.05.2013
Сообщений: 3,145
Записей в блоге: 3
17.02.2017, 09:05
Что я заметил с вашего года:

1)На всякий случай нужно поменять первые две строчки местами. Так как не исключено что DatabaseName, относится к параметрам и он чистится.
2) Если у вас переменная DataBaseFileName задается в коде, то вы должны везде проставить двойные слеши, типа так: \\\\192.168.1.200\\\D:\\Data\\database.f db
3) Ну и проверить включен ли у Firebird нелокальный доступ (не помню как у этой БД с этим дела, но помойму такие настройки есть)
0
1 / 1 / 1
Регистрация: 06.06.2009
Сообщений: 116
17.02.2017, 10:16  [ТС]
В описании на сайте Firebird есть мануал:

A TCP/IP connection string consists of:
1. a server name or IP address
2. a colon (“:”)
3. either the absolute path + filename on the server machine, or an alias defined on the server machine.

On Windows:
siamang:C:\Biology\Data\Primates\Apes\po pulations.fdb
sofa:С:\Misc\Friends\Rich\Lenders.fdb
127.0.0.1:Borrowers

Я проверил. Да строка DataBaseFileName="192.168.1.200:С:\Data\ database.fdb" работает. Проблема решена.

P.S. Но остается непонятным, как правильно настроить EMS SQL Manager for InterBase and Firebird. Там надо какой-то host указывать. И вбить просто в поле "Имя базы" строку в вышеуказанном формате не работает. Но, наврное, это уже вопрос не на форуме Builder C++.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
17.02.2017, 10:16
Помогаю со студенческими работами здесь

Установить соединение с БД Firebird, расположенной на сервере
Добрый вечер Ребят!я совсем не опытный новичек!Помогите пожалуйста с проблемой!!!! Есть база данных firebird ncore-db.fdb расположенная...

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

Доступ к IP камере с удаленного сервера
Добрый день. Есть VPS сервер, с которого требуется получить доступ к IP камере (ничего транслировать не нужно, всего-лишь получить n...

Firebird, как реализовать обновление таблицы у клиента при её изменении на сервере
Добрый время суток! Подскажите кто-нибудь работал с событиями firebird? Точнее интересует следующее: Visual studio C# +...

Firebird доступ к базе
Если использовать Firebird embedded, размещая её на сервере, нужно будет писать сервер на сокетах, чтобы тот слушал запросы от клиентов?...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru