sqlalchemy.exc.ProgrammingError: (pymysql.err.ProgrammingError) (1146, "Table 'cov.gongzuo' doesn't exist")
[SQL: SELECT gongzuo.id AS gongzuo_id, gongzuo.title AS gongzuo_title, gongzuo.content AS gongzuo_content, gongzuo.url AS gongzuo_url
FROM gongzuo ORDER BY gongzuo.id]
(Background on this error at: https://sqlalche.me/e/14/f405)
2023-04-06 18:56:06,795 INFO sqlalchemy.engine.Engine ROLLBACK
192.168.137.1 - - [06/Apr/2023 18:56:06] "GET /policy HTTP/1.1" 500 -
不清楚是哪里做错了,麻烦各位
该回答通过自己思路及引用到GPTᴼᴾᴱᴺᴬᴵ搜索,得到内容具体如下:
根据错误提示,您的代码在执行一个查询语句时出现了错误,因为查询的表格 "gongzuo" 不存在。这通常是因为您在代码中定义了一个对该表格的查询,但是在数据库中该表格并不存在,因此需要在数据库中创建该表格。
您可以通过在SQLAlchemy中使用Table对象来创建数据库表格。以下是一个示例代码,用于创建名为 "gongzuo" 的表格:
from sqlalchemy import create_engine, Column, Integer, String
from sqlalchemy.ext.declarative import declarative_base
# 创建连接数据库的引擎
engine = create_engine('mysql+pymysql://username:password@host:port/database')
# 创建一个基类,用于定义ORM模型
Base = declarative_base()
class Gongzuo(Base):
__tablename__ = 'gongzuo'
id = Column(Integer, primary_key=True)
title = Column(String(255))
content = Column(String(1024))
url = Column(String(255))
# 创建表格
Base.metadata.create_all(engine)
在上面的代码中,我们首先创建了一个连接数据库的引擎,然后定义了一个基类 Base
,用于定义ORM模型。在 Gongzuo
模型中,我们定义了一个名为 __tablename__
的特殊属性,用于指定该模型对应的数据库表格名称。然后,我们定义了三个列,分别对应表格中的三个字段。最后,我们通过调用 Base.metadata.create_all(engine)
来创建数据库表格。
如果您已经运行过类似的代码来创建表格,但是仍然出现了错误提示,可能是因为您的代码中存在一些问题,可能是:
您可以检查以上问题,然后修改代码并重新运行,看看是否能够解决问题。
如果以上回答对您有所帮助,点击一下采纳该答案~谢谢
不知道你这个问题是否已经解决, 如果还没有解决的话: