运行此代码时出现错误:
engine = sa.create_engine([connection_str])
connection = engine.connect()
Run Code Online (Sandbox Code Playgroud)
部分回溯:
Exception during reset or similar
Traceback (most recent call last):
File "/Users/philipjoss/opt/miniconda3/envs/capra/lib/python3.9/site-packages/sqlalchemy/pool/base.py", line 682, in _finalize_fairy
fairy._reset(pool)
File "/Users/philipjoss/opt/miniconda3/envs/capra/lib/python3.9/site-packages/sqlalchemy/pool/base.py", line 887, in _reset
pool._dialect.do_rollback(self)
File "/Users/philipjoss/opt/miniconda3/envs/capra/lib/python3.9/site-packages/sqlalchemy/engine/default.py", line 667, in do_rollback
dbapi_connection.rollback()
File "/Users/philipjoss/opt/miniconda3/envs/capra/lib/python3.9/site-packages/mysql/connector/connection.py", line 1236, in rollback
self._execute_query("ROLLBACK")
File "/Users/philipjoss/opt/miniconda3/envs/capra/lib/python3.9/site-packages/mysql/connector/connection.py", line 1248, in _execute_query
self.cmd_query(query)
File "/Users/philipjoss/opt/miniconda3/envs/capra/lib/python3.9/site-packages/mysql/connector/connection.py", line 828, in cmd_query
packet.extend(lc_int(len(self._query_attrs)))
File "/Users/philipjoss/opt/miniconda3/envs/capra/lib/python3.9/site-packages/mysql/connector/utils.py", line 164, in lc_int
return bytearray(struct.pack('<B', i))
AttributeError: 'NoneType' object has no attribute 'pack'
Exception closing connection <mysql.connector.connection.MySQLConnection object at 0x7fc69049fee0>
Traceback (most recent call last):
File "/Users/philipjoss/opt/miniconda3/envs/capra/lib/python3.9/site-packages/sqlalchemy/pool/base.py", line 682, in _finalize_fairy
fairy._reset(pool)
File "/Users/philipjoss/opt/miniconda3/envs/capra/lib/python3.9/site-packages/sqlalchemy/pool/base.py", line 887, in _reset
pool._dialect.do_rollback(self)
File "/Users/philipjoss/opt/miniconda3/envs/capra/lib/python3.9/site-packages/sqlalchemy/engine/default.py", line 667, in do_rollback
dbapi_connection.rollback()
File "/Users/philipjoss/opt/miniconda3/envs/capra/lib/python3.9/site-packages/mysql/connector/connection.py", line 1236, in rollback
self._execute_query("ROLLBACK")
File "/Users/philipjoss/opt/miniconda3/envs/capra/lib/python3.9/site-packages/mysql/connector/connection.py", line 1248, in _execute_query
self.cmd_query(query)
File "/Users/philipjoss/opt/miniconda3/envs/capra/lib/python3.9/site-packages/mysql/connector/connection.py", line 828, in cmd_query
packet.extend(lc_int(len(self._query_attrs)))
File "/Users/philipjoss/opt/miniconda3/envs/capra/lib/python3.9/site-packages/mysql/connector/utils.py", line 164, in lc_int
return bytearray(struct.pack('<B', i))
AttributeError: 'NoneType' object has no attribute 'pack'
Run Code Online (Sandbox Code Playgroud)
如果我添加会话,查询等工作正常,但我总是在代码运行结束时收到此错误。
Python 是 3.9.6,SQLAlchemy 是 1.4.23,MySQL 是 8.0.26。
有任何想法吗?
更新:
我已经升级到 SQLAlchemy 1.4.25 但仍然收到错误...
Arc*_*ave -1
确保语法正确且大小写正确(区分大小写)
from sqlalchemy import create_engine
engine = create_engine("mysql+mysqlconnector://root:examplepassword@localhost/")
connection = engine.connect()
Run Code Online (Sandbox Code Playgroud)
MySQL 方言使用 mysql-python 作为默认 DBAPI。有许多可用的 MySQL DBAPI,包括 MySQL-connector-python 和 OurSQL:
默认
engine = create_engine('mysql://scott:tiger@localhost/foo')mysqlclient(MySQL-Python 的一个维护分支)
engine = create_engine('mysql+mysqldb://scott:tiger@localhost/foo')PyMySQL
engine = create_engine('mysql+pymysql://scott:tiger@localhost/foo')
| 归档时间: |
|
| 查看次数: |
5700 次 |
| 最近记录: |