簡體   English   中英

外部使用python中的數據庫url從Heroku Postgres獲取數據

[英]Get data from Heroku Postgres externally using database url in python

我正在嘗試從外部應用程序訪問我的 Heroku 數據庫。 我的 Heroku 應用程序有指向 postgres url 的鏈接,但我無法從數據庫中獲取數據。 我嘗試了以下方法:

import psycopg2
import os

DB_URI=os.environ.get('DATABASE_URL') or 'sqlite:///'+os.path.join(basedir, 'app.db')

conn=psycopg2.connect(DB_URI)
cur=conn.cursor()
cur.execute("SELECT * FROM USER;")

print(cur.fetchone())

但是我得到一個隨機名稱而不是我需要的數據。 有什么辦法可以解決這個問題嗎?

這是連接到數據庫的正確方法。

您與 Postgres DB 的連接沒有問題,因為psycopg2否則會引發OperationalError或類似錯誤。

您使用SELECT * FROM USER獲得的“隨機名稱”實際上是您的 Postgres 用戶名(Heroku 為您定義),而這正是您通過執行此查詢所要求的。

您必須編寫正確的 SQL 查詢,這取決於您的需要。

例如,如果您將數據存儲在名為myapp_mytable的表中, cur.execute("""select * from myapp_mytable""")將非常有效。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM