我正在尝试使用SQLAlchemy创建一个MySQL数据库。
我有一个包含SQLite数据库的Flask Web应用程序。我想切换到MySQL。我对SQLAlchemy相当新,并已经学习了如何通过SQLAlchemy创建数据库。然而,这些数据库都是SQLite数据库。我正在尝试使用SQLAlchemy创建一个MySQL数据库,但在阅读多篇文章后,仍然无法成功。
我还安装了python-mysqldb。
以下是用于创建SQLite数据库的原始代码片段:
我收到的错误信息。
我有一个包含SQLite数据库的Flask Web应用程序。我想切换到MySQL。我对SQLAlchemy相当新,并已经学习了如何通过SQLAlchemy创建数据库。然而,这些数据库都是SQLite数据库。我正在尝试使用SQLAlchemy创建一个MySQL数据库,但在阅读多篇文章后,仍然无法成功。
我还安装了python-mysqldb。
以下是用于创建SQLite数据库的原始代码片段:
Base = declarative_base()
class Categories(Base):
__tablename__ = 'categories'
id = Column(Integer, primary_key=True)
name = Column(String, unique=True)
image = Column(String)
link = Column(String)
description = Column(String)
if __name__ =='__main__':
engine = create_engine('sqlite:///app/database/main.db', echo=True)
Base.metadata.create_all(engine)
MySQL 尝试
if __name__ =='__main__':
engine = create_engine('mysql://user:password@localhost/app/database/main.db', echo=True)
Base.metadata.create_all(engine)
MySQL第二次尝试
if __name__ =='__main__':
engine = create_engine('mysql://user:password@localhost/app/database/main.db', echo=True)
engine.execute("CREATE DATABASE main.db")
engine.execute("USE main.db")
我收到的错误信息。
sqlalchemy.exc.OperationalError: (_mysql_exceptions.OperationalError) (1049, "Unknown database 'app/database/main.db'") (Background on this error at: http://sqlalche.me/e/e3q8)
我最好的猜测是,我在使用sqlalchemy与mysql时显然缺少某些东西。
任何帮助,即使只是指引我正确方向,都将不胜感激。
database_name.db
中。相反,它创建一个名为database_name
的目录。因此,指定文件类型“.db”是无效的。 - jdlk07CREATE DATABASE databasename;
”? - Roly Poly