【问题标题】:Unable to access postgreSQL database using psycopg2 with pythonista app无法使用 psycopg2 和 pythonista 应用程序访问 postgreSQL 数据库
【发布时间】:2021-01-18 23:23:43
【问题描述】:

我是一个相对较新的编程人员,我正在开发一个应用程序,该应用程序利用 AWS RDS PostgreSQL 数据库允许我在我的设备上创建或更新有关应用程序的信息,特别是在我的 2016 Windows 10 Surfacebook 和我的 iphone 8 之间+。

使用 psycopg2,我可以使用我的 Surfacebook 相对轻松地连接到我的数据库。然而,我现在正在尝试使用 Pythonista 应用程序(一个用于 Iphone 的 Python 解释器,允许您创建和执行 Python 程序)来开发移动版,并且遇到了 psycopg2 模块的问题。

使用 StaSh 终端(允许在移动设备上安装 pip 的 Pythonista 脚本)我使用 pip install psycopg2 安装了 psycopg2,但是当我尝试运行程序时:

import psycopg2

conn = psycopg2.connect(
    host="localhost",
    database="database",
    user="user",
    password="password"
)
c = conn.cursor()

def list_all_accounts():
    with conn:
    c.execute("SELECT * FROM table")
        result = c.fetchall()
    return result

import pprint
pprint.pprint(list_all_accounts())

我有一个ModuleNotFoundError 完整回溯:

  File "/private/var/mobile/Containers/Shared/AppGroup/60906921-DCB6-478D-898E-EDA48296C57C/Pythonista3/Documents/my-apps/Pandle/model.py", line 9, in <module>
    import psycopg2
  File "/private/var/mobile/Containers/Shared/AppGroup/60906921-DCB6-478D-898E-EDA48296C57C/Pythonista3/Documents/site-packages-3/psycopg2/__init__.py", line 51, in <module>
    from psycopg2._psycopg import (                     # noqa
ModuleNotFoundError: No module named 'psycopg2._psycopg'

当我检查已安装的模块时,在 psycopg2 目录中确实没有名为 _psycopg 的模块。

我也尝试过使用pip install pyscopg2-binary,但也没有用。我想知道是否有人知道我是否可以使用 pyscopg2 使用 Pythonista 访问远程 AWS PostgreSQL 数据库,或者 Pythonista 本身是否有某种我在这方面不知道的限制。感谢您的帮助。

【问题讨论】:

  • “没有工作”不是可接受的问题描述。运行pip install pyscopg2-binary时遇到什么错误?

标签: python postgresql psycopg2 pythonista


【解决方案1】:

Pythonista 不支持 pip 安装二进制文件,也没有 C 代码编译器。

有一个纯 Python 替代品 pg8000,至少有 1 个 Pythonista 用户可以使用 reported。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-13
    • 2014-11-06
    • 2013-10-25
    • 2018-08-04
    • 2017-08-02
    • 2023-04-02
    相关资源
    最近更新 更多