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

TypeError:Не може да се извика метод 'query' на null - при извикване на pg.connect с Heroku node.js

Имах същия проблем с моя сайт и това, което беше по-разочароващо е, че работи на внедрения сайт, но когато се опитвах да стартирам сайта локално (използвайки foreman), получих тази грешка. От грешката разбрах, че не успявам да се свържа към базата данни и от по-нататъшна проверка това са двете причини, които са причинили тази грешка:

  1. Няма променлива на средата DATABASE_URL
    По някаква причина нямах process.env.DATABASE_URL зададен в моя .env файл, въпреки че беше зададен правилно на отдалечения сайт. За да разрешите този проблем, можете да стартирате "heroku config" и да копирате необходимия DATABASE_URL във вашия локален .env файл (ако този файл не съществува, създайте такъв).
    Важна ЗАБЕЛЕЖКА: Когато копирате и поставите, променливите променят знака ":" на "=".

  2. ?ssl=true не е част от DATABASE_URL
    Благодарение на горната корекция клиентът вече знае къде да се свърже, но все още не може да отвори връзка поради проблеми с удостоверяването. Чрез добавяне на ?ssl=true към DATABASE_URL най-накрая реши проблема за мен. Изглежда, че когато се опитвате да се свържете от отдалечения сайт (сървъри на heroku), не е необходимо да предавате параметъра, но когато се опитвате да се свържете с базата данни от вашия локален компютър, имате нужда от това удостоверяване, за да направите правилна връзка.

Надяваме се, че ще помогне.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Postgres масив json последна дата

  2. Конкатениране/сливане на стойности на масива по време на групиране/агрегиране

  3. Какъв тип клеймо за дата да избера в PostgreSQL база данни?

  4. Как да покажа невидими уникод знаци в psql / postgres?

  5. Как мога да групирам деца и родители в една заявка?