Closed qq284909408 closed 1 year ago
你在用 django-db-connection-pool 哪个版本?我看报错里有C:\Users\Administrator\AppData\Local\Programs\Python\Python36\lib\site-packages\django\db\backends\oracle\introspection.py
,应该是因为之前版本使用了 Oracle 的 DatabaseWrapper 导致的,新版Oceanbase MySQL backend 更正了这个问题,试试主线的版本跑下 makemigrations 看看
OK。~邮件已收到。。
你好,解决了吗?
OK。~邮件已收到。。
OK。~邮件已收到。。
Describe the bug A clear and concise description of what the bug is. 大佬, 使用该包连接OB 的Mysql租户时,在 makemigrations 时出现错误如下: 应该如何解决,请求帮助万分感激。 manage.py@obtest > makemigrations "C:\Program Files\JetBrains\PyCharm 2020.3.3\bin\runnerw64.exe" C:\Users\Administrator\AppData\Local\Programs\Python\Python36\python.exe "C:\Program Files\JetBrains\PyCharm 2020.3.3\plugins\python\helpers\pycharm\django_manage.py" makemigrations D:/obtest Tracking file by folder pattern: migrations D:\Program Files\Java\jdk1.8.0_351\jre\bin\server\jvm.dll hell Oracle jdbc:oceanbase://192.168.1.161:2883/sre Traceback (most recent call last): File "PreparedStatement.java", line 1231, in com.alipay.oceanbase.jdbc.PreparedStatement.execute File "PreparedStatement.java", line 1942, in com.alipay.oceanbase.jdbc.PreparedStatement.executeInternal File "ConnectionImpl.java", line 2908, in com.alipay.oceanbase.jdbc.ConnectionImpl.execSQL File "MysqlIO.java", line 3164, in com.alipay.oceanbase.jdbc.MysqlIO.sqlQueryDirect File "MysqlIO.java", line 2998, in com.alipay.oceanbase.jdbc.MysqlIO.sendCommand File "MysqlIO.java", line 4804, in com.alipay.oceanbase.jdbc.MysqlIO.checkErrorPacket File "MysqlIO.java", line 4879, in com.alipay.oceanbase.jdbc.MysqlIO.checkErrorPacket File "SQLError.java", line 1176, in com.alipay.oceanbase.jdbc.SQLError.createSQLException File "Util.java", line 416, in com.alipay.oceanbase.jdbc.Util.getInstance File "Util.java", line 439, in com.alipay.oceanbase.jdbc.Util.handleNewInstance File "Constructor.java", line 423, in java.lang.reflect.Constructor.newInstance File "DelegatingConstructorAccessorImpl.java", line 45, in sun.reflect.DelegatingConstructorAccessorImpl.newInstance File "NativeConstructorAccessorImpl.java", line 62, in sun.reflect.NativeConstructorAccessorImpl.newInstance File "NativeConstructorAccessorImpl.java", line -2, in sun.reflect.NativeConstructorAccessorImpl.newInstance0 Exception: Java Exception
The above exception was the direct cause of the following exception:
Traceback (most recent call last): File "C:\Users\Administrator\AppData\Local\Programs\Python\Python36\lib\site-packages\jaydebeapi__init__.py", line 534, in execute is_rs = self._prep.execute() com.alipay.oceanbase.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: com.alipay.oceanbase.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown column 'view_name' in 'field list'
During handling of the above exception, another exception occurred:
Traceback (most recent call last): File "C:\Program Files\JetBrains\PyCharm 2020.3.3\plugins\python\helpers\pycharm\django_manage.py", line 52, in
run_command()
File "C:\Program Files\JetBrains\PyCharm 2020.3.3\plugins\python\helpers\pycharm\django_manage.py", line 46, in run_command
run_module(manage_file, None, 'main', True)
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python36\lib\runpy.py", line 205, in run_module
return _run_module_code(code, init_globals, run_name, mod_spec)
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python36\lib\runpy.py", line 96, in _run_module_code
mod_name, mod_spec, pkg_name, script_name)
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python36\lib\runpy.py", line 85, in _run_code
exec(code, run_globals)
File "D:/obtest\manage.py", line 22, in
main()
File "D:/obtest\manage.py", line 18, in main
execute_from_command_line(sys.argv)
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python36\lib\site-packages\django\core\management__init.py", line 381, in execute_from_command_line
utility.execute()
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python36\lib\site-packages\django\core\management__init.py", line 375, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python36\lib\site-packages\django\core\management\base.py", line 323, in run_from_argv
self.execute(*args, cmd_options)
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python36\lib\site-packages\django\core\management\base.py", line 364, in execute
output = self.handle(*args, *options)
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python36\lib\site-packages\django\core\management\base.py", line 83, in wrapped
res = handle_func(args, kwargs)
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python36\lib\site-packages\django\core\management\commands\makemigrations.py", line 101, in handle
loader.check_consistent_history(connection)
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python36\lib\site-packages\django\db\migrations\loader.py", line 283, in check_consistent_history
applied = recorder.applied_migrations()
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python36\lib\site-packages\django\db\migrations\recorder.py", line 73, in applied_migrations
if self.has_table():
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python36\lib\site-packages\django\db\migrations\recorder.py", line 56, in has_table
return self.Migration._meta.db_table in self.connection.introspection.table_names(self.connection.cursor())
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python36\lib\site-packages\django\db\backends\base\introspection.py", line 48, in table_names
return get_names(cursor)
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python36\lib\site-packages\django\db\backends\base\introspection.py", line 43, in get_names
return sorted(ti.name for ti in self.get_table_list(cursor)
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python36\lib\site-packages\django\db\backends\oracle\introspection.py", line 64, in get_table_list
""")
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python36\lib\site-packages\django\db\backends\utils.py", line 99, in execute
return super().execute(sql, params)
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python36\lib\site-packages\django\db\backends\utils.py", line 67, in execute
return self._execute_with_wrappers(sql, params, many=False, executor=self._execute)
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python36\lib\site-packages\django\db\backends\utils.py", line 76, in _execute_with_wrappers
return executor(sql, params, many, context)
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python36\lib\site-packages\django\db\backends\utils.py", line 82, in _execute
return self.cursor.execute(sql)
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python36\lib\site-packages\dj_db_conn_pool\backends\jdbc\utils.py", line 39, in execute
self._cursor.cursor.execute(query, parameters)
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python36\lib\site-packages\jaydebeapi__init__.py", line 536, in execute
_handle_sql_exception()
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python36\lib\site-packages\jaydebeapi__init__.py", line 165, in _handle_sql_exception_jpype
reraise(exc_type, exc_info[1], exc_info[2])
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python36\lib\site-packages\jaydebeapi\init__.py", line 57, in reraise
raise value.with_traceback(tb)
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python36\lib\site-packages\jaydebeapi\init__.py", line 534, in execute
is_rs = self._prep.execute()
jaydebeapi.DatabaseError: com.alipay.oceanbase.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown column 'view_name' in 'field list'
Process finished with exit code 1
The above exception was the direct cause of the following exception:
Environment
Traceback Post traceback here.