为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
【DM版本】:DM8
【操作系统】:Windows10
【CPU】:i5-11400
【问题描述】*:
环境信息:
(1)python版本:3.10
(2)SQLAlchemy版本:2.0.25
(3)sqlalchemy-dm版本:2.0.0
(4)dmPython版本:2.4.9
(5)达梦数据库版本:dm8
ERROR: Traceback (most recent call last):
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python310\lib\site-packages\starlette\routing.py", line 738, in lifespan
async with self.lifespan_context(app) as maybe_state:
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python310\lib\contextlib.py", line 199, in aenter
return await anext(self.gen)
File "E:\newWorkspace\1-Personal\RuoYi-Python\RuoYi-Vue-FastAPI\ruoyi-fastapi-backend\server.py", line 35, in lifespan
await init_create_table()
File "E:\newWorkspace\1-Personal\RuoYi-Python\RuoYi-Vue-FastAPI\ruoyi-fastapi-backend\config\get_db.py", line 23, in init_create_table
Base.metadata.create_all(bind=engine)
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python310\lib\site-packages\sqlalchemy\sql\schema.py", line 5832, in create_all
bind._run_ddl_visitor(
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python310\lib\site-packages\sqlalchemy\engine\base.py", line 3244, in _run_ddl_visitor
conn._run_ddl_visitor(visitorcallable, element, **kwargs)
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python310\lib\site-packages\sqlalchemy\engine\base.py", line 2448, in _run_ddl_visitor
visitorcallable(self.dialect, self, **kwargs).traverse_single(element)
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python310\lib\site-packages\sqlalchemy\sql\visitors.py", line 671, in traverse_single
return meth(obj, **kw)
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python310\lib\site-packages\sqlalchemy\sql\ddl.py", line 898, in visit_metadata
[t for t in tables if self._can_create_table(t)]
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python310\lib\site-packages\sqlalchemy\sql\ddl.py", line 898, in <listcomp>
[t for t in tables if self._can_create_table(t)]
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python310\lib\site-packages\sqlalchemy\sql\ddl.py", line 863, in _can_create_table
return not self.checkfirst or not self.dialect.has_table(
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python310\lib\site-packages\sqlalchemy_dm-2.0.0-py3.10.egg\sqlalchemy_dm\base.py", line 1866, in has_table
cursor = connection.execute(
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python310\lib\site-packages\sqlalchemy\engine\base.py", line 1416, in execute
return meth(
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python310\lib\site-packages\sqlalchemy\sql\elements.py", line 517, in _execute_on_connection
return connection._execute_clauseelement(
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python310\lib\site-packages\sqlalchemy\engine\base.py", line 1631, in _execute_clauseelement
compiled_sql, extracted_params, cache_hit = elem._compile_w_cache(
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python310\lib\site-packages\sqlalchemy\sql\elements.py", line 705, in _compile_w_cache
compiled_sql = self._compiler(
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python310\lib\site-packages\sqlalchemy\sql\elements.py", line 317, in _compiler
return dialect.statement_compiler(dialect, self, **kw)
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python310\lib\site-packages\sqlalchemy_dm-2.0.0-py3.10.egg\sqlalchemy_dm\base.py", line 357, in init
super(DMCompiler, self).init(*args, **kwargs)
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python310\lib\site-packages\sqlalchemy\sql\compiler.py", line 1427, in init
Compiled.init(self, dialect, statement, **kwargs)
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python310\lib\site-packages\sqlalchemy\sql\compiler.py", line 867, in init
self.string = self.process(self.statement, **compile_kwargs)
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python310\lib\site-packages\sqlalchemy\sql\compiler.py", line 912, in process
return obj._compiler_dispatch(self, **kwargs)
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python310\lib\site-packages\sqlalchemy\sql\visitors.py", line 143, in _compiler_dispatch
return meth(self, **kw) # type: ignore # noqa: E501
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python310\lib\site-packages\sqlalchemy_dm-2.0.0-py3.10.egg\sqlalchemy_dm\base.py", line 1120, in visit_textclause
return super(DMCompiler, self).visit_textclause(textclause, add_to_result_map, **kw)
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python310\lib\site-packages\sqlalchemy\sql\compiler.py", line 2640, in visit_textclause
BIND_PARAMS.sub(
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python310\lib\site-packages\sqlalchemy\sql\compiler.py", line 2624, in do_bindparam
return self.process(textclause._bindparams[name], **kw)
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python310\lib\site-packages\sqlalchemy\sql\compiler.py", line 912, in process
return obj._compiler_dispatch(self, **kwargs)
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python310\lib\site-packages\sqlalchemy\sql\visitors.py", line 143, in _compiler_dispatch
return meth(self, **kw) # type: ignore # noqa: E501
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python310\lib\site-packages\sqlalchemy_dm-2.0.0-py3.10.egg\sqlalchemy_dm\base.py", line 825, in visit_bindparam
return super(DMCompiler, self).visit_bindparam(bindparam, within_columns_clause, literal_binds, skip_bind_expression, literal_execute, render_postcompile, **kwargs)
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python310\lib\site-packages\sqlalchemy\sql\compiler.py", line 3728, in visit_bindparam
ret = self.bindparam_string(
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python310\lib\site-packages\sqlalchemy_dm-2.0.0-py3.10.egg\sqlalchemy_dm\dmPython.py", line 30, in bindparam_string
return DMCompiler.bindparam_string(self, name, **kw)
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python310\lib\site-packages\sqlalchemy_dm-2.0.0-py3.10.egg\sqlalchemy_dm\base.py", line 669, in bindparam_string
return super(DMCompiler, self).bindparam_string(name, positional_names, post_compile, expanding, escaped_from, **kw)
TypeError: SQLCompiler.bindparam_string() got multiple values for argument 'bindparam_type'
遇到了相同的问题,这个问题有解决方案吗?