PostgreSQL
 sql >> база данни >  >> RDS >> PostgreSQL

db.create_all() Обектът „NoneType“ няма атрибут „име на драйвер“

Мисля, че това е проблем с начина, по който се опитвате да се свържете с вашия Postgres база данни:

app.config["SQLALCHEMY_DATABASE_URI"] = os.getenv("postgresql://postgres:example@sqldat.com/database1")

вероятно искате вместо това този ред да бъде следният:

app.config["SQLALCHEMY_DATABASE_URI"] = "postgresql://postgres:example@sqldat.com/database1"

тъй като os.getenv(...) в момента се опитва да получи променлива на средата на вашата система с име:"postgresql://postgres:example@sqldat.com/database1" и със сигурност не сте настроили променлива на средата с това име.. Ето защо получавате NoneType грешка за вашия postgres драйвер:

Ако искате да използвате променлива на обкръжението, за да получите низа за връзка с вашата база данни, направете нещо като следното във вашия .bash_profile или .bashrc файл:

export SQLALCHEMY_DATABASE_URI='postgresql://postgres:example@sqldat.com/database1'

след това променете кода за връзка с вашата база данни на следния:

app.config["SQLALCHEMY_DATABASE_URI"] = os.environ.get('SQLALCHEMY_DATABASE_URI')

Надяваме се, че това има смисъл!



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да вмъкнете и изтриете данни в PostgreSQL

  2. Съставна OR SQL заявка (заявка #1 с WITH) и (заявка #2) с COUNT() извинения

  3. Как да показвате нулеви стойности при изпълнение на заявки в psql (PostgreSQL)

  4. Свързване на две таблици в сложна заявка (не еднообразни данни)

  5. Използване на SQL като xlookup