psycopg2.OperationalError: FATAL: база данных "news" не существует - PullRequest
0 голосов
/ 06 октября 2019

Пытаюсь установить соединение с моей базой данных postgres sql для выполнения запросов через код Python.

Я нахожусь на MAC (mojave 10.14.6) и пытаюсь соединиться с моей базой данных virtal postgres черезскрипт на питоне. Я могу получить доступ к базам данных через окно терминала, но когда я пытаюсь подключиться с помощью psycopg2, я получаю psycopg2.OperationalError: FATAL: база данных "Students" не существует.

Я проверил, у меня есть только один экземпляр postgres, я проверил используемый порт и добавил его в параметры.

Версия Postgres - 11.5. Версия Python - Python 3.7.4. У меня естьпроверил расположение psql / usr / local / bin / psql Я проверил расположение postgres / usr / local / bin / postgres

Ничто, рекомендованное в других постах, похоже, не работает.

import psycopg2

#DBNAME = 'students'

def connect():

    print('Trying to connect to server ...')
    conn = psycopg2.connect(dbname = 'students')
    cur = conn.cursor()

    cur.execute('select * from students')


    results = cur.fetchall()
    print(results)

    cur.close
    conn.close

if __name__ == '__main__':
    connect()

---------------------------------------------------------------------

Below works when I connect to the postgres database
-----------------------------------------------------------------------
import psycopg2

def connect():

    print('Trying to connect to server ...')

    conn = psycopg2.connect(dbname = 'postgres')
    cur = conn.cursor()

    print('PostgreSQL database version:')
    cur.execute('select version()')
    db_version = cur.fetchone()
    print(db_version)


    cur.close
    conn.close

if __name__ == '__main__':
    connect()

result:

RESTART: /Users/Karen/Documents/Backup/Karens_Documents/Web_Development/web_dev_nano/course-ud303/SQL/fullstack-nanodegree-vm-master/vagrant/db_test.py 
Trying to connect to server ...
PostgreSQL database version:
('PostgreSQL 11.5 on x86_64-apple-darwin18.6.0, compiled by Apple LLVM version 10.0.1 (clang-1001.0.46.4), 64-bit',)

Error:

Traceback (most recent call last):
  File "/Users/Karen/Documents/Backup/Karens_Documents/Web_Development/web_dev_nano/course-ud303/SQL/fullstack-nanodegree-vm-master/vagrant/db_test.py", line 28, in <module>
    connect()
  File "/Users/Karen/Documents/Backup/Karens_Documents/Web_Development/web_dev_nano/course-ud303/SQL/fullstack-nanodegree-vm-master/vagrant/db_test.py", line 9, in connect
    conn = psycopg2.connect(dbname = DBNAME)
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/psycopg2/__init__.py", line 126, in connect
    conn = _connect(dsn, connection_factory=connection_factory, **kwasync)
psycopg2.OperationalError: FATAL:  database "students" does not exist
...