Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > Python
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 22.02.2017, 00:17   #1
sergey113
Форумчанин
 
Регистрация: 12.12.2007
Сообщений: 104
По умолчанию Не получается поключиться к базе firebird - Error while connecting to database

Учусь работать на python 2.7 с базами данных. Использую firebird. Пытаюсь работать по вот такому мануалу
http://firebirdsql.org/file/document...g-started.html

Создал базу данных, но при выполнении такого кода:
Код:
#!/usr/bin/env python 
# -*- coding: utf-8 -*- 
import fdb
con = fdb.connect(dsn='/home/korolev/Downloads/mkpdlpdb.db',user='sysdba', password='respect')
Интерпертатор выдает ошибку
Код:
-----------
python /home/korolev/Downloads/mkpdlp/dbconnect.py 
Traceback (most recent call last):
  File "/home/korolev/Downloads/mkpdlp/dbconnect.py", line 4, in <module>
    con = fdb.connect(dsn='/home/korolev/Downloads/mkpdlpdb.db',user='sysdba', password='respect')
  File "/home/korolev/.local/lib/python2.7/site-packages/fdb/fbcore.py", line 734, in connect
    "Error while connecting to database:")
fdb.fbcore.DatabaseError: ('Error while connecting to database:\n- SQLCODE: -902\n- I/O error during "open" operation for file "/home/korolev/Downloads/mkpdlpdb.db"\n- Error while trying to open file\n- No such file or directory', -902, 335544344)
---------
Не могу понять что он хочет. Делаю самое элементарное.
Еще может кто подскажет, может зря с питоном связался чтобы сделать приложение для работы с базой данных ?
Если да, то на чем будет удобнее и быстрее?
sergey113 вне форума Ответить с цитированием
Старый 22.02.2017, 00:25   #2
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Дык написано ж, файл не нашел.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 22.02.2017, 00:27   #3
sergey113
Форумчанин
 
Регистрация: 12.12.2007
Сообщений: 104
По умолчанию

Цитата:
Сообщение от Alex11223 Посмотреть сообщение
Дык написано ж, файл не нашел.
А он есть.
Изначально владельцем файла был пользователь Firebird
Я поменял на себя, но ошибка осталась та же.

Последний раз редактировалось sergey113; 22.02.2017 в 00:31.
sergey113 вне форума Ответить с цитированием
Старый 22.02.2017, 00:34   #4
sergey113
Форумчанин
 
Регистрация: 12.12.2007
Сообщений: 104
По умолчанию

Нет хорошего мануала на русском как работать с этой шляпой.
Пока не касался баз данных python вызывал восторг своей простотой. Но как только связался с firebird резко забуксовал.
Работаю под ubuntu. Иду через терни к звздам на каждом шагу. Пока дошел до подключения к базе данных уже несколько ошибок устранил.
sergey113 вне форума Ответить с цитированием
Старый 22.02.2017, 00:36   #5
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Точно есть и именно с таким путем?

Цитата:
Сообщение от sergey113 Посмотреть сообщение
Нет хорошего мануала на русском как работать с этой шляпой.
Ну без английского сложно программировать.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 22.02.2017, 00:52   #6
sergey113
Форумчанин
 
Регистрация: 12.12.2007
Сообщений: 104
По умолчанию

Цитата:
Сообщение от Alex11223 Посмотреть сообщение
Точно есть и именно с таким путем?


Ну без английского сложно программировать.
Да путь копирую и вставляю. Перепроверял несколько раз.
Что и разочаровывет, складывается ощущение что python не плох, но из-за какой-то сырости у него много причуд. От версии к весрии меняется синтаксис, бесплатные либы и плагины перестают работать.
Читаю что есть и на английском, пеервожу со словарем. Это все конечно не облегчает дело.
sergey113 вне форума Ответить с цитированием
Старый 22.02.2017, 07:02   #7
pompiduskus
юзер как все
Участник клуба
 
Аватар для pompiduskus
 
Регистрация: 10.01.2012
Сообщений: 1,586
По умолчанию

Вот тут, есть больше примеров,

http://firebirdsql.org/file/document...reate_database

Код:
import fdb

# http://firebirdsql.org/file/documentation/drivers_documentation/python/fdb/usage-guide.html

_req = "";
_req += " CREATE DATABASE 'localhost:/path/to/test.fdb' "
_req += " page_size 8192 "
_req += " user 'SYSDBA' "
_req += " password 'foobar' "
_req += " DEFAULT CHARACTER SET UTF8 ";

con = fdb.create_database( _sql );

# ---------

con = fdb.connect(host='localhost', database='/path/to/test.fdb', user='SYSDBA', password='fobar', charset='UTF8');
У меня сервера нету, так что проверить не смогу.
<Дзен - Вся вселенная в тебе > | Резюме: https://ch3ll0v3k.github.io/CV/
pompiduskus вне форума Ответить с цитированием
Старый 22.02.2017, 07:52   #8
sergey113
Форумчанин
 
Регистрация: 12.12.2007
Сообщений: 104
По умолчанию

Цитата:
Сообщение от pompiduskus Посмотреть сообщение
Вот тут, есть больше примеров,

http://firebirdsql.org/file/document...reate_database

Код:
import fdb

# http://firebirdsql.org/file/documentation/drivers_documentation/python/fdb/usage-guide.html

_req = "";
_req += " CREATE DATABASE 'localhost:/path/to/test.fdb' "
_req += " page_size 8192 "
_req += " user 'SYSDBA' "
_req += " password 'foobar' "
_req += " DEFAULT CHARACTER SET UTF8 ";

con = fdb.create_database( _sql );

# ---------

con = fdb.connect(host='localhost', database='/path/to/test.fdb', user='SYSDBA', password='fobar', charset='UTF8');
У меня сервера нету, так что проверить не смогу.
Огромное спасибо. Ваша строка подключения сработала
sergey113 вне форума Ответить с цитированием
Старый 22.02.2017, 07:57   #9
sergey113
Форумчанин
 
Регистрация: 12.12.2007
Сообщений: 104
По умолчанию

И такой варианта подключения тоже сработал
con = fdb.connect(dsn='localhost:/home/korolev/Downloads/mkpdlpdb.gdb', user='sysdba', password='respect', charset='UTF8')

Хотя раньше я его использовал уже и не получилось. Но был потом обнаружен косяк с оквычками. Ресурс с которого я копировал команду использовал одинарные ковычки, но другие и они вызывали ощшибку. Наложилось еще несколько других ошибок и я заплутал.
Теперь можно хоть дальше посмотреть как это работает.

Последний раз редактировалось sergey113; 22.02.2017 в 08:00.
sergey113 вне форума Ответить с цитированием
Старый 22.02.2017, 08:35   #10
pompiduskus
юзер как все
Участник клуба
 
Аватар для pompiduskus
 
Регистрация: 10.01.2012
Сообщений: 1,586
По умолчанию

Да, когда есть хотя бы один рабочий пример, сразу легче.
<Дзен - Вся вселенная в тебе > | Резюме: https://ch3ll0v3k.github.io/CV/
pompiduskus вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Database Server Error: You have an error in your SQL syntax helpkz БД в Delphi 10 29.03.2013 12:29
Ошибка при подключение к базе FireBird Dozent БД в Delphi 6 25.01.2013 00:22
программное подключение к базе Firebird Jene4ka БД в Delphi 5 24.04.2011 22:12
Сетевое подключение FlameRobin к базе FireBird 2.1 Timpi БД в Delphi 3 31.03.2011 13:53
Связь маster-detail в базе Firebird atarix SQL, базы данных 1 15.08.2008 18:03