3 回答

TA貢獻1836條經驗 獲得超4個贊
我只是對這個主題感到困惑,并創建了一篇關于連接器字符串的簡短博客文章。
以下解決方案適用于 Python 3:
要求
pip install SQLAlchemy
pip install PyMySQL
代碼
import sqlalchemy
SQLALCHEMY_DATABASE_URI = 'mysql+pymysql://user:password@host/dbname'
# Test if it works
engine = sqlalchemy.create_engine(SQLALCHEMY_DATABASE_URI, echo=True)
print(engine.table_names())
是的,它確實是“mysql”而不是“mariadb”。

TA貢獻1772條經驗 獲得超5個贊
只需使用 mysql+mysqldb 代替 MariaDB 引擎,它們的工作方式非常相似。
create_engine('mysql+mysqldb://username:password@host:port/databasename')
更新: 您還應該為 python2 安裝 mysql-python
pip install mysql-python
或者 python3 的 mysqlclient:
pip install mysqlclient

TA貢獻1786條經驗 獲得超11個贊
從 SQLAlchemy 1.4.0b1 開始,您可以使用 mariadb 方言和本地 mariadb 連接器。使用以下網址方案:'mariadb+mariadbconnector://'
.
先決條件:
可以通過pip install --pre sqlalchemy 安裝 SQLAlchemy 1.4.0b1
還應安裝 MariaDB 連接器/Python。它有自己的系統依賴項,MariaDB Connector/C。
添加回答
舉報