我正在创建一个非常基本的python程序,将其与psql中的数据库连接。
我的代码如下:
从sqlalchemy导入create_engine
从sqlalchemy.orm导入scoped_session,会话创建器
engine = create_engine(“ postgresql + psycopg2:// sidrules:password @ localhost:5432 / first”)
db = scoped_session(sessionmaker(bind = engine))
def main():
flights=db.execute("select origin, destination, duration from flights").fetchall()
for flight in flights:
print(f"from {flight.origin} to {flight.destination} in {flight.duration} min")
如果名称 ==“ 主要”:
main()
在运行上面的代码时,我遇到以下错误(对不起,格式奇怪):
*回溯(最近通话最近): 文件“ select.py”,第6行,在 engine = create_engine(“ postgres + psycopg2:// sidrules:secret @ localhost:5432 / first”) 文件“ C:\ Users \ Home \ AppData \ Local \ Programs \ Python \ Python38-32 \ lib \ site-packages \ sqlalchemy \ engine__init __。py”,在第479行中 create_engine 返回strategy.create(* args,** kwargs) 创建文件“ C:\ Users \ Home \ AppData \ Local \ Programs \ Python \ Python38-32 \ lib \ site-packages \ sqlalchemy \ engine \ strategies.py”,行61 入口点= u._get_entrypoint() _get_entrypoint中的第172行的文件“ C:\ Users \ Home \ AppData \ Local \ Programs \ Python \ Python38-32 \ lib \ site-packages \ sqlalchemy \ engine \ url.py” cls = Registry.load(名称) 加载中的文件“ C:\ Users \ Home \ AppData \ Local \ Programs \ Python \ Python38-32 \ lib \ site-packages \ sqlalchemy \ util \ langhelpers.py”,第253行 loader = self.auto_fn(名称) _auto_fn中的第45行的文件“ C:\ Users \ Home \ AppData \ Local \ Programs \ Python \ Python38-32 \ lib \ site-packages \ sqlalchemy \ dialects__init __。py” 模块= 导入(“ sqlalchemy.dialects。%s”%(方言,))。方言 文件“ C:\ Users \ Home \ AppData \ Local \ Programs \ Python \ Python38-32 \ lib \ site-packages \ sqlalchemy \ dialects \ postgresql__init __。py”, 第8行 来自。进口基地 文件“ C:\ Users \ Home \ AppData \ Local \ Programs \ Python \ Python38-32 \ lib \ site-packages \ sqlalchemy \ dialects \ postgresql \ base.py”,行954,位于 从uuid导入UUID为_python_UUID#noqa 文件“ C:\ Users \ Home \ AppData \ Local \ Programs \ Python \ Python38-32 \ lib \ uuid.py”,第57行,在 _AIX = platform.system()=='AIX' 系统中的文件“ C:\ Users \ Home \ AppData \ Local \ Programs \ Python \ Python38-32 \ lib \ platform.py”,行891 返回uname()。system 文件“ C:\ Users \ Home \ AppData \ Local \ Programs \ Python \ Python38-32 \ lib \ platform.py”,行779,一致 节点= _node() _node中的文件“ C:\ Users \ Home \ AppData \ Local \ Programs \ Python \ Python38-32 \ lib \ platform.py”,行582 进口插座 文件“ C:\ Users \ Home \ AppData \ Local \ Programs \ Python \ Python38-32 \ lib \ socket.py”,第52行,在 导入os,sys,io,选择器 文件“ C:\ Users \ Home \ AppData \ Local \ Programs \ Python \ Python38-32 \ lib \ selectors.py”,第12行 导入选择 文件“ D:\ HTML \ SQL \ select.py”,第6行,在 engine = create_engine(“ postgres + psycopg2:// sidrules:sidhhant @ localhost:5432 / first”) 文件“ C:\ Users \ Home \ AppData \ Local \ Programs \ Python \ Python38-32 \ lib \ site-packages \ sqlalchemy \ engine__init __。py”,在第479行中 create_engine 返回strategy.create(* args,** kwargs) 在创建时,文件“ C:\ Users \ Home \ AppData \ Local \ Programs \ Python \ Python38-32 \ lib \ site-packages \ sqlalchemy \ engine \ strategies.py” 入口点= u._get_entrypoint() _get_entrypoint中的第172行的文件“ C:\ Users \ Home \ AppData \ Local \ Programs \ Python \ Python38-32 \ lib \ site-packages \ sqlalchemy \ engine \ url.py” cls = Registry.load(名称) 加载中的文件“ C:\ Users \ Home \ AppData \ Local \ Programs \ Python \ Python38-32 \ lib \ site-packages \ sqlalchemy \ util \ langhelpers.py”,第253行 loader = self.auto_fn(名称) _auto_fn
中的文件“ C:\ Users \ Home \ AppData \ Local \ Programs \ Python \ Python38-32 \ lib \ site-packages \ sqlalchemy \ dialects__init __。py”,第49行模块= getattr(模块,方言)
AttributeError:模块'sqlalchemy.dialects'没有属性'postgresql'*
我认为最后一行需要担心:
AttributeError:模块'sqlalchemy.dialects'没有属性'postgresql'
谢谢您的帮助。
对不起,对于奇怪的格式,这是我的第一个问题。
答案 0 :(得分:0)
谢谢所有看到和思考我问题的人。
我唯一的问题是文件名是“ select.py”。 我不知道如何,但是重命名文件对我来说很成功。