Я знаю, что это действительно простой вопрос, но я не знаю решения. Что здесь происходит, когда я пытаюсь подключиться к postgresql? Я самоучка в этой области базы данных и программирования, поэтому, пожалуйста, будьте осторожны со мной. Когда я пытаюсь выполнить следующий код:
import sqlalchemy
db = sqlalchemy.create_engine('postgresql:///tutorial.db')
Я получаю эту ошибку:
Отслеживание (последний вызов последний): Файл "", строка 1, в db = sqlalchemy.create_engine ('postgresql: ///tutorial.db') Файл "C: \ Python27 \ lib \ site-packages \ sqlalchemy-0.7.5dev-py2.7.egg \ sqlalchemy \ engine__init __. Py", строка 327, в create_engine return strategy.create (* args, ** kwargs) Файл "C: \ Python27 \ lib \ site-packages \ sqlalchemy-0.7.5dev-py2.7.egg \ sqlalchemy \ engine \ strategy.py", строка 64, в create dbapi = dialect_cls.dbapi (** dbapi_args) Файл "C: \ Python27 \ lib \ site-packages \ sqlalchemy-0.7.5dev-py2.7.egg \ sqlalchemy \ dialects \ postgresql \ psycopg2.py", строка 289, в dbapi psycopg = импорт ('psycopg2') ImportError: нет модуля с именем psycopg2
Нужно ли мне устанавливать psycopg2 отдельно? Какая строка подключения для postgresql правильная?
Честно говоря, я сбит с толку, что это не зависимость от SQLAlchemy. Если вы собираетесь объединить функциональность другого пакета с вашим, вы должны поддерживать его и не требовать отдельной установки.
@StevenWade не совсем, вы обычно не хотите устанавливать зависимости для всех систем баз данных, когда вы собираетесь использовать, возможно, только одну. Вот почему зависимости в пакетах такого типа не являются обязательными и не применяются.