Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bug: 修改表名称,或者移动表字段顺序时报错 #1093

Closed
Luckytiger666 opened this issue Jan 10, 2024 · 4 comments
Closed

Bug: 修改表名称,或者移动表字段顺序时报错 #1093

Luckytiger666 opened this issue Jan 10, 2024 · 4 comments
Labels
bug Something isn't working

Comments

@Luckytiger666
Copy link

Luckytiger666 commented Jan 10, 2024

Chat2DB Version

Chat2DB 3.1.19

Describe the bug

错误堆栈:

java.lang.ArrayIndexOutOfBoundsException: Index -2 out of bounds for length 19
	at ai.chat2db.plugin.mysql.builder.MysqlSqlBuilder.isMoveValid(MysqlSqlBuilder.java:275)
	at ai.chat2db.plugin.mysql.builder.MysqlSqlBuilder.buildSql(MysqlSqlBuilder.java:227)
	at ai.chat2db.plugin.mysql.builder.MysqlSqlBuilder.buildGenerateReorderColumnSql(MysqlSqlBuilder.java:166)
	at ai.chat2db.plugin.mysql.builder.MysqlSqlBuilder.buildModifyTaleSql(MysqlSqlBuilder.java:114)
	at ai.chat2db.server.domain.core.impl.TableServiceImpl.buildSql(TableServiceImpl.java:167)
	at ai.chat2db.server.web.api.controller.rdb.TableController.modifySql(TableController.java:215)
	at jdk.internal.reflect.GeneratedMethodAccessor249.invoke(Unknown Source)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.base/java.lang.reflect.Method.invoke(Unknown Source)
	at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:343)
	at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:196)
	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163)
	at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:750)
	at org.springframework.aop.aspectj.MethodInvocationProceedingJoinPoint.proceed(MethodInvocationProceedingJoinPoint.java:89)
	at ai.chat2db.server.web.api.aspect.ConnectionInfoHandler.connectionInfoHandler(ConnectionInfoHandler.java:62)
	at jdk.internal.reflect.GeneratedMethodAccessor83.invoke(Unknown Source)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.base/java.lang.reflect.Method.invoke(Unknown Source)
	at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethodWithGivenArgs(AbstractAspectJAdvice.java:637)
	at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethod(AbstractAspectJAdvice.java:627)
	at org.springframework.aop.aspectj.AspectJAroundAdvice.invoke(AspectJAroundAdvice.java:71)
	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:184)
	at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:750)
	at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:97)
	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:184)
	at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:750)
	at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:702)
	at ai.chat2db.server.web.api.controller.rdb.TableController$$SpringCGLIB$$0.modifySql(<generated>)
	at jdk.internal.reflect.GeneratedMethodAccessor249.invoke(Unknown Source)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.base/java.lang.reflect.Method.invoke(Unknown Source)
	at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:207)
	at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:152)
	at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:118)
	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:884)
	at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:797)
	at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
	at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1081)
	at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:974)
	at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1011)
	at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:914)
	at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:590)
	at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:885)
	at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:658)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:205)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149)
	at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149)
	at ai.chat2db.server.start.config.interceptor.CorsFilter.doFilter(CorsFilter.java:37)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149)
	at org.zalando.logbook.servlet.LogbookFilter.doFilter(LogbookFilter.java:76)
	at org.zalando.logbook.servlet.HttpFilter.doFilter(HttpFilter.java:32)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149)
	at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)
	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149)
	at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)
	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149)
	at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149)
	at ai.chat2db.server.start.log.LogOncePerRequestFilter.doFilterInternal(LogOncePerRequestFilter.java:32)
	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:166)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90)
	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:482)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:115)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:341)
	at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:390)
	at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63)
	at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:894)
	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1741)
	at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52)
	at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191)
	at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)
	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
	at java.base/java.lang.Thread.run(Unknown Source)

错误全量信息:

{
    "getApplicationMessage":{
        "env":"desktop",
        "versions":"3.1.19",
        "buildTime":1704272048871,
        "userAgent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) chat2db/3.1.17 Chrome/108.0.5359.215 Electron/22.3.27 Safari/537.36"
    },
    "requestUrl":"http://127.0.0.1:10824/api/rdb/table/modify/sql",
    "requestParams":"{\"databaseName\":\"ry-cloud\",\"dataSourceId\":2,\"refresh\":true,\"newTable\":{\"name\":\"sys_menu\",\"comment\":\"菜单权限表\",\"schemaName\":null,\"columnList\":[{\"oldColumn\":null,\"oldName\":\"menu_id\",\"name\":\"menu_id\",\"tableName\":\"sys_menu\",\"columnType\":\"BIGINT\",\"dataType\":null,\"defaultValue\":null,\"autoIncrement\":true,\"comment\":\"菜单ID\",\"primaryKey\":true,\"primaryKeyName\":\"PRIMARY\",\"primaryKeyOrder\":1,\"schemaName\":null,\"databaseName\":\"ry-cloud\",\"columnSize\":20,\"bufferLength\":null,\"decimalDigits\":0,\"numPrecRadix\":null,\"sqlDataType\":null,\"sqlDatetimeSub\":null,\"charOctetLength\":null,\"ordinalPosition\":1,\"nullable\":0,\"generatedColumn\":null,\"extent\":null,\"editStatus\":null,\"charSetName\":null,\"collationName\":null,\"value\":null,\"unit\":null,\"sparse\":null,\"defaultConstraintName\":null},{\"oldColumn\":null,\"oldName\":\"menu_name\",\"name\":\"menu_name\",\"tableName\":\"sys_menu\",\"columnType\":\"VARCHAR\",\"dataType\":null,\"defaultValue\":null,\"autoIncrement\":false,\"comment\":\"菜单名称\",\"primaryKey\":false,\"primaryKeyName\":null,\"primaryKeyOrder\":0,\"schemaName\":null,\"databaseName\":\"ry-cloud\",\"columnSize\":50,\"bufferLength\":null,\"decimalDigits\":0,\"numPrecRadix\":null,\"sqlDataType\":null,\"sqlDatetimeSub\":null,\"charOctetLength\":null,\"ordinalPosition\":2,\"nullable\":0,\"generatedColumn\":null,\"extent\":null,\"editStatus\":null,\"charSetName\":\"utf8mb4\",\"collationName\":\"utf8mb4_general_ci\",\"value\":null,\"unit\":null,\"sparse\":null,\"defaultConstraintName\":null},{\"oldColumn\":null,\"oldName\":\"parent_id\",\"name\":\"parent_id\",\"tableName\":\"sys_menu\",\"columnType\":\"BIGINT\",\"dataType\":null,\"defaultValue\":\"0\",\"autoIncrement\":false,\"comment\":\"父菜单ID\",\"primaryKey\":false,\"primaryKeyName\":null,\"primaryKeyOrder\":0,\"schemaName\":null,\"databaseName\":\"ry-cloud\",\"columnSize\":20,\"bufferLength\":null,\"decimalDigits\":0,\"numPrecRadix\":null,\"sqlDataType\":null,\"sqlDatetimeSub\":null,\"charOctetLength\":null,\"ordinalPosition\":3,\"nullable\":1,\"generatedColumn\":null,\"extent\":null,\"editStatus\":null,\"charSetName\":null,\"collationName\":null,\"value\":null,\"unit\":null,\"sparse\":null,\"defaultConstraintName\":null},{\"oldColumn\":null,\"oldName\":\"order_num\",\"name\":\"order_num\",\"tableName\":\"sys_menu\",\"columnType\":\"INT\",\"dataType\":null,\"defaultValue\":\"0\",\"autoIncrement\":false,\"comment\":\"显示顺序\",\"primaryKey\":false,\"primaryKeyName\":null,\"primaryKeyOrder\":0,\"schemaName\":null,\"databaseName\":\"ry-cloud\",\"columnSize\":4,\"bufferLength\":null,\"decimalDigits\":0,\"numPrecRadix\":null,\"sqlDataType\":null,\"sqlDatetimeSub\":null,\"charOctetLength\":null,\"ordinalPosition\":4,\"nullable\":1,\"generatedColumn\":null,\"extent\":null,\"editStatus\":null,\"charSetName\":null,\"collationName\":null,\"value\":null,\"unit\":null,\"sparse\":null,\"defaultConstraintName\":null},{\"oldColumn\":null,\"oldName\":\"path\",\"name\":\"path\",\"tableName\":\"sys_menu\",\"columnType\":\"VARCHAR\",\"dataType\":null,\"defaultValue\":\"\",\"autoIncrement\":false,\"comment\":\"路由地址\",\"primaryKey\":false,\"primaryKeyName\":null,\"primaryKeyOrder\":0,\"schemaName\":null,\"databaseName\":\"ry-cloud\",\"columnSize\":200,\"bufferLength\":null,\"decimalDigits\":0,\"numPrecRadix\":null,\"sqlDataType\":null,\"sqlDatetimeSub\":null,\"charOctetLength\":null,\"ordinalPosition\":5,\"nullable\":1,\"generatedColumn\":null,\"extent\":null,\"editStatus\":null,\"charSetName\":\"utf8mb4\",\"collationName\":\"utf8mb4_general_ci\",\"value\":null,\"unit\":null,\"sparse\":null,\"defaultConstraintName\":null},{\"oldColumn\":null,\"oldName\":\"component\",\"name\":\"component\",\"tableName\":\"sys_menu\",\"columnType\":\"VARCHAR\",\"dataType\":null,\"defaultValue\":null,\"autoIncrement\":false,\"comment\":\"组件路径\",\"primaryKey\":false,\"primaryKeyName\":null,\"primaryKeyOrder\":0,\"schemaName\":null,\"databaseName\":\"ry-cloud\",\"columnSize\":255,\"bufferLength\":null,\"decimalDigits\":0,\"numPrecRadix\":null,\"sqlDataType\":null,\"sqlDatetimeSub\":null,\"charOctetLength\":null,\"ordinalPosition\":6,\"nullable\":1,\"generatedColumn\":null,\"extent\":null,\"editStatus\":null,\"charSetName\":\"utf8mb4\",\"collationName\":\"utf8mb4_general_ci\",\"value\":null,\"unit\":null,\"sparse\":null,\"defaultConstraintName\":null},{\"oldColumn\":null,\"oldName\":\"is_frame\",\"name\":\"is_frame\",\"tableName\":\"sys_menu\",\"columnType\":\"INT\",\"dataType\":null,\"defaultValue\":\"1\",\"autoIncrement\":false,\"comment\":\"是否为外链(0是 1否)\",\"primaryKey\":false,\"primaryKeyName\":null,\"primaryKeyOrder\":0,\"schemaName\":null,\"databaseName\":\"ry-cloud\",\"columnSize\":1,\"bufferLength\":null,\"decimalDigits\":0,\"numPrecRadix\":null,\"sqlDataType\":null,\"sqlDatetimeSub\":null,\"charOctetLength\":null,\"ordinalPosition\":8,\"nullable\":1,\"generatedColumn\":null,\"extent\":null,\"editStatus\":null,\"charSetName\":null,\"collationName\":null,\"value\":null,\"unit\":null,\"sparse\":null,\"defaultConstraintName\":null},{\"oldColumn\":null,\"oldName\":\"is_cache\",\"name\":\"is_cache\",\"tableName\":\"sys_menu\",\"columnType\":\"INT\",\"dataType\":null,\"defaultValue\":\"0\",\"autoIncrement\":false,\"comment\":\"是否缓存(0缓存 1不缓存)\",\"primaryKey\":false,\"primaryKeyName\":null,\"primaryKeyOrder\":0,\"schemaName\":null,\"databaseName\":\"ry-cloud\",\"columnSize\":1,\"bufferLength\":null,\"decimalDigits\":0,\"numPrecRadix\":null,\"sqlDataType\":null,\"sqlDatetimeSub\":null,\"charOctetLength\":null,\"ordinalPosition\":9,\"nullable\":1,\"generatedColumn\":null,\"extent\":null,\"editStatus\":null,\"charSetName\":null,\"collationName\":null,\"value\":null,\"unit\":null,\"sparse\":null,\"defaultConstraintName\":null},{\"oldColumn\":null,\"oldName\":\"menu_type\",\"name\":\"menu_type\",\"tableName\":\"sys_menu\",\"columnType\":\"CHAR\",\"dataType\":null,\"defaultValue\":\"\",\"autoIncrement\":false,\"comment\":\"菜单类型(M目录 C菜单 F按钮)\",\"primaryKey\":false,\"primaryKeyName\":null,\"primaryKeyOrder\":0,\"schemaName\":null,\"databaseName\":\"ry-cloud\",\"columnSize\":1,\"bufferLength\":null,\"decimalDigits\":0,\"numPrecRadix\":null,\"sqlDataType\":null,\"sqlDatetimeSub\":null,\"charOctetLength\":null,\"ordinalPosition\":10,\"nullable\":1,\"generatedColumn\":null,\"extent\":null,\"editStatus\":null,\"charSetName\":\"utf8mb4\",\"collationName\":\"utf8mb4_general_ci\",\"value\":null,\"unit\":null,\"sparse\":null,\"defaultConstraintName\":null},{\"oldColumn\":null,\"oldName\":\"query\",\"name\":\"query_abc\",\"tableName\":\"sys_menu\",\"columnType\":\"VARCHAR\",\"dataType\":null,\"defaultValue\":null,\"autoIncrement\":false,\"comment\":\"路由参数\",\"primaryKey\":false,\"primaryKeyName\":null,\"primaryKeyOrder\":0,\"schemaName\":null,\"databaseName\":\"ry-cloud\",\"columnSize\":255,\"bufferLength\":null,\"decimalDigits\":0,\"numPrecRadix\":null,\"sqlDataType\":null,\"sqlDatetimeSub\":null,\"charOctetLength\":null,\"ordinalPosition\":7,\"nullable\":1,\"generatedColumn\":null,\"extent\":null,\"editStatus\":\"MODIFY\",\"charSetName\":\"utf8mb4\",\"collationName\":\"utf8mb4_general_ci\",\"value\":null,\"unit\":null,\"sparse\":null,\"defaultConstraintName\":null},{\"oldColumn\":null,\"oldName\":\"visible\",\"name\":\"visible\",\"tableName\":\"sys_menu\",\"columnType\":\"CHAR\",\"dataType\":null,\"defaultValue\":\"0\",\"autoIncrement\":false,\"comment\":\"菜单状态(0显示 1隐藏)\",\"primaryKey\":false,\"primaryKeyName\":null,\"primaryKeyOrder\":0,\"schemaName\":null,\"databaseName\":\"ry-cloud\",\"columnSize\":1,\"bufferLength\":null,\"decimalDigits\":0,\"numPrecRadix\":null,\"sqlDataType\":null,\"sqlDatetimeSub\":null,\"charOctetLength\":null,\"ordinalPosition\":11,\"nullable\":1,\"generatedColumn\":null,\"extent\":null,\"editStatus\":null,\"charSetName\":\"utf8mb4\",\"collationName\":\"utf8mb4_general_ci\",\"value\":null,\"unit\":null,\"sparse\":null,\"defaultConstraintName\":null},{\"oldColumn\":null,\"oldName\":\"status\",\"name\":\"status\",\"tableName\":\"sys_menu\",\"columnType\":\"CHAR\",\"dataType\":null,\"defaultValue\":\"0\",\"autoIncrement\":false,\"comment\":\"菜单状态(0正常 1停用)\",\"primaryKey\":false,\"primaryKeyName\":null,\"primaryKeyOrder\":0,\"schemaName\":null,\"databaseName\":\"ry-cloud\",\"columnSize\":1,\"bufferLength\":null,\"decimalDigits\":0,\"numPrecRadix\":null,\"sqlDataType\":null,\"sqlDatetimeSub\":null,\"charOctetLength\":null,\"ordinalPosition\":12,\"nullable\":1,\"generatedColumn\":null,\"extent\":null,\"editStatus\":null,\"charSetName\":\"utf8mb4\",\"collationName\":\"utf8mb4_general_ci\",\"value\":null,\"unit\":null,\"sparse\":null,\"defaultConstraintName\":null},{\"oldColumn\":null,\"oldName\":\"perms\",\"name\":\"perms\",\"tableName\":\"sys_menu\",\"columnType\":\"VARCHAR\",\"dataType\":null,\"defaultValue\":null,\"autoIncrement\":false,\"comment\":\"权限标识\",\"primaryKey\":false,\"primaryKeyName\":null,\"primaryKeyOrder\":0,\"schemaName\":null,\"databaseName\":\"ry-cloud\",\"columnSize\":100,\"bufferLength\":null,\"decimalDigits\":0,\"numPrecRadix\":null,\"sqlDataType\":null,\"sqlDatetimeSub\":null,\"charOctetLength\":null,\"ordinalPosition\":13,\"nullable\":1,\"generatedColumn\":null,\"extent\":null,\"editStatus\":null,\"charSetName\":\"utf8mb4\",\"collationName\":\"utf8mb4_general_ci\",\"value\":null,\"unit\":null,\"sparse\":null,\"defaultConstraintName\":null},{\"oldColumn\":null,\"oldName\":\"icon\",\"name\":\"icon\",\"tableName\":\"sys_menu\",\"columnType\":\"VARCHAR\",\"dataType\":null,\"defaultValue\":\"#\",\"autoIncrement\":false,\"comment\":\"菜单图标\",\"primaryKey\":false,\"primaryKeyName\":null,\"primaryKeyOrder\":0,\"schemaName\":null,\"databaseName\":\"ry-cloud\",\"columnSize\":100,\"bufferLength\":null,\"decimalDigits\":0,\"numPrecRadix\":null,\"sqlDataType\":null,\"sqlDatetimeSub\":null,\"charOctetLength\":null,\"ordinalPosition\":14,\"nullable\":1,\"generatedColumn\":null,\"extent\":null,\"editStatus\":null,\"charSetName\":\"utf8mb4\",\"collationName\":\"utf8mb4_general_ci\",\"value\":null,\"unit\":null,\"sparse\":null,\"defaultConstraintName\":null},{\"oldColumn\":null,\"oldName\":\"create_by\",\"name\":\"create_by\",\"tableName\":\"sys_menu\",\"columnType\":\"VARCHAR\",\"dataType\":null,\"defaultValue\":\"\",\"autoIncrement\":false,\"comment\":\"创建者\",\"primaryKey\":false,\"primaryKeyName\":null,\"primaryKeyOrder\":0,\"schemaName\":null,\"databaseName\":\"ry-cloud\",\"columnSize\":64,\"bufferLength\":null,\"decimalDigits\":0,\"numPrecRadix\":null,\"sqlDataType\":null,\"sqlDatetimeSub\":null,\"charOctetLength\":null,\"ordinalPosition\":15,\"nullable\":1,\"generatedColumn\":null,\"extent\":null,\"editStatus\":null,\"charSetName\":\"utf8mb4\",\"collationName\":\"utf8mb4_general_ci\",\"value\":null,\"unit\":null,\"sparse\":null,\"defaultConstraintName\":null},{\"oldColumn\":null,\"oldName\":\"create_time\",\"name\":\"create_time\",\"tableName\":\"sys_menu\",\"columnType\":\"DATETIME\",\"dataType\":null,\"defaultValue\":null,\"autoIncrement\":false,\"comment\":\"创建时间\",\"primaryKey\":false,\"primaryKeyName\":null,\"primaryKeyOrder\":0,\"schemaName\":null,\"databaseName\":\"ry-cloud\",\"columnSize\":null,\"bufferLength\":null,\"decimalDigits\":0,\"numPrecRadix\":null,\"sqlDataType\":null,\"sqlDatetimeSub\":null,\"charOctetLength\":null,\"ordinalPosition\":16,\"nullable\":1,\"generatedColumn\":null,\"extent\":null,\"editStatus\":null,\"charSetName\":null,\"collationName\":null,\"value\":null,\"unit\":null,\"sparse\":null,\"defaultConstraintName\":null},{\"oldColumn\":null,\"oldName\":\"update_by\",\"name\":\"update_by\",\"tableName\":\"sys_menu\",\"columnType\":\"VARCHAR\",\"dataType\":null,\"defaultValue\":\"\",\"autoIncrement\":false,\"comment\":\"更新者\",\"primaryKey\":false,\"primaryKeyName\":null,\"primaryKeyOrder\":0,\"schemaName\":null,\"databaseName\":\"ry-cloud\",\"columnSize\":64,\"bufferLength\":null,\"decimalDigits\":0,\"numPrecRadix\":null,\"sqlDataType\":null,\"sqlDatetimeSub\":null,\"charOctetLength\":null,\"ordinalPosition\":17,\"nullable\":1,\"generatedColumn\":null,\"extent\":null,\"editStatus\":null,\"charSetName\":\"utf8mb4\",\"collationName\":\"utf8mb4_general_ci\",\"value\":null,\"unit\":null,\"sparse\":null,\"defaultConstraintName\":null},{\"oldColumn\":null,\"oldName\":\"update_time\",\"name\":\"update_time\",\"tableName\":\"sys_menu\",\"columnType\":\"DATETIME\",\"dataType\":null,\"defaultValue\":null,\"autoIncrement\":false,\"comment\":\"更新时间\",\"primaryKey\":false,\"primaryKeyName\":null,\"primaryKeyOrder\":0,\"schemaName\":null,\"databaseName\":\"ry-cloud\",\"columnSize\":null,\"bufferLength\":null,\"decimalDigits\":0,\"numPrecRadix\":null,\"sqlDataType\":null,\"sqlDatetimeSub\":null,\"charOctetLength\":null,\"ordinalPosition\":18,\"nullable\":1,\"generatedColumn\":null,\"extent\":null,\"editStatus\":null,\"charSetName\":null,\"collationName\":null,\"value\":null,\"unit\":null,\"sparse\":null,\"defaultConstraintName\":null},{\"oldColumn\":null,\"oldName\":\"remark\",\"name\":\"remark\",\"tableName\":\"sys_menu\",\"columnType\":\"VARCHAR\",\"dataType\":null,\"defaultValue\":\"\",\"autoIncrement\":false,\"comment\":\"备注\",\"primaryKey\":false,\"primaryKeyName\":null,\"primaryKeyOrder\":0,\"schemaName\":null,\"databaseName\":\"ry-cloud\",\"columnSize\":500,\"bufferLength\":null,\"decimalDigits\":0,\"numPrecRadix\":null,\"sqlDataType\":null,\"sqlDatetimeSub\":null,\"charOctetLength\":null,\"ordinalPosition\":19,\"nullable\":1,\"generatedColumn\":null,\"extent\":null,\"editStatus\":null,\"charSetName\":\"utf8mb4\",\"collationName\":\"utf8mb4_general_ci\",\"value\":null,\"unit\":null,\"sparse\":null,\"defaultConstraintName\":null}],\"indexList\":[],\"dbType\":null,\"databaseName\":\"ry-cloud\",\"type\":\"TABLE\",\"pinned\":false,\"ddl\":null,\"engine\":null,\"charset\":null,\"collate\":null,\"incrementValue\":null,\"partition\":null,\"tablespace\":null},\"oldTable\":{\"name\":\"sys_menu\",\"comment\":\"菜单权限表\",\"schemaName\":null,\"columnList\":[{\"oldColumn\":null,\"oldName\":\"menu_id\",\"name\":\"menu_id\",\"tableName\":\"sys_menu\",\"columnType\":\"BIGINT\",\"dataType\":null,\"defaultValue\":null,\"autoIncrement\":true,\"comment\":\"菜单ID\",\"primaryKey\":true,\"primaryKeyName\":\"PRIMARY\",\"primaryKeyOrder\":1,\"schemaName\":null,\"databaseName\":\"ry-cloud\",\"columnSize\":20,\"bufferLength\":null,\"decimalDigits\":0,\"numPrecRadix\":null,\"sqlDataType\":null,\"sqlDatetimeSub\":null,\"charOctetLength\":null,\"ordinalPosition\":1,\"nullable\":0,\"generatedColumn\":null,\"extent\":null,\"editStatus\":null,\"charSetName\":null,\"collationName\":null,\"value\":null,\"unit\":null,\"sparse\":null,\"defaultConstraintName\":null},{\"oldColumn\":null,\"oldName\":\"menu_name\",\"name\":\"menu_name\",\"tableName\":\"sys_menu\",\"columnType\":\"VARCHAR\",\"dataType\":null,\"defaultValue\":null,\"autoIncrement\":false,\"comment\":\"菜单名称\",\"primaryKey\":false,\"primaryKeyName\":null,\"primaryKeyOrder\":0,\"schemaName\":null,\"databaseName\":\"ry-cloud\",\"columnSize\":50,\"bufferLength\":null,\"decimalDigits\":0,\"numPrecRadix\":null,\"sqlDataType\":null,\"sqlDatetimeSub\":null,\"charOctetLength\":null,\"ordinalPosition\":2,\"nullable\":0,\"generatedColumn\":null,\"extent\":null,\"editStatus\":null,\"charSetName\":\"utf8mb4\",\"collationName\":\"utf8mb4_general_ci\",\"value\":null,\"unit\":null,\"sparse\":null,\"defaultConstraintName\":null},{\"oldColumn\":null,\"oldName\":\"parent_id\",\"name\":\"parent_id\",\"tableName\":\"sys_menu\",\"columnType\":\"BIGINT\",\"dataType\":null,\"defaultValue\":\"0\",\"autoIncrement\":false,\"comment\":\"父菜单ID\",\"primaryKey\":false,\"primaryKeyName\":null,\"primaryKeyOrder\":0,\"schemaName\":null,\"databaseName\":\"ry-cloud\",\"columnSize\":20,\"bufferLength\":null,\"decimalDigits\":0,\"numPrecRadix\":null,\"sqlDataType\":null,\"sqlDatetimeSub\":null,\"charOctetLength\":null,\"ordinalPosition\":3,\"nullable\":1,\"generatedColumn\":null,\"extent\":null,\"editStatus\":null,\"charSetName\":null,\"collationName\":null,\"value\":null,\"unit\":null,\"sparse\":null,\"defaultConstraintName\":null},{\"oldColumn\":null,\"oldName\":\"order_num\",\"name\":\"order_num\",\"tableName\":\"sys_menu\",\"columnType\":\"INT\",\"dataType\":null,\"defaultValue\":\"0\",\"autoIncrement\":false,\"comment\":\"显示顺序\",\"primaryKey\":false,\"primaryKeyName\":null,\"primaryKeyOrder\":0,\"schemaName\":null,\"databaseName\":\"ry-cloud\",\"columnSize\":4,\"bufferLength\":null,\"decimalDigits\":0,\"numPrecRadix\":null,\"sqlDataType\":null,\"sqlDatetimeSub\":null,\"charOctetLength\":null,\"ordinalPosition\":4,\"nullable\":1,\"generatedColumn\":null,\"extent\":null,\"editStatus\":null,\"charSetName\":null,\"collationName\":null,\"value\":null,\"unit\":null,\"sparse\":null,\"defaultConstraintName\":null},{\"oldColumn\":null,\"oldName\":\"path\",\"name\":\"path\",\"tableName\":\"sys_menu\",\"columnType\":\"VARCHAR\",\"dataType\":null,\"defaultValue\":\"\",\"autoIncrement\":false,\"comment\":\"路由地址\",\"primaryKey\":false,\"primaryKeyName\":null,\"primaryKeyOrder\":0,\"schemaName\":null,\"databaseName\":\"ry-cloud\",\"columnSize\":200,\"bufferLength\":null,\"decimalDigits\":0,\"numPrecRadix\":null,\"sqlDataType\":null,\"sqlDatetimeSub\":null,\"charOctetLength\":null,\"ordinalPosition\":5,\"nullable\":1,\"generatedColumn\":null,\"extent\":null,\"editStatus\":null,\"charSetName\":\"utf8mb4\",\"collationName\":\"utf8mb4_general_ci\",\"value\":null,\"unit\":null,\"sparse\":null,\"defaultConstraintName\":null},{\"oldColumn\":null,\"oldName\":\"component\",\"name\":\"component\",\"tableName\":\"sys_menu\",\"columnType\":\"VARCHAR\",\"dataType\":null,\"defaultValue\":null,\"autoIncrement\":false,\"comment\":\"组件路径\",\"primaryKey\":false,\"primaryKeyName\":null,\"primaryKeyOrder\":0,\"schemaName\":null,\"databaseName\":\"ry-cloud\",\"columnSize\":255,\"bufferLength\":null,\"decimalDigits\":0,\"numPrecRadix\":null,\"sqlDataType\":null,\"sqlDatetimeSub\":null,\"charOctetLength\":null,\"ordinalPosition\":6,\"nullable\":1,\"generatedColumn\":null,\"extent\":null,\"editStatus\":null,\"charSetName\":\"utf8mb4\",\"collationName\":\"utf8mb4_general_ci\",\"value\":null,\"unit\":null,\"sparse\":null,\"defaultConstraintName\":null},{\"oldColumn\":null,\"oldName\":\"query\",\"name\":\"query\",\"tableName\":\"sys_menu\",\"columnType\":\"VARCHAR\",\"dataType\":null,\"defaultValue\":null,\"autoIncrement\":false,\"comment\":\"路由参数\",\"primaryKey\":false,\"primaryKeyName\":null,\"primaryKeyOrder\":0,\"schemaName\":null,\"databaseName\":\"ry-cloud\",\"columnSize\":255,\"bufferLength\":null,\"decimalDigits\":0,\"numPrecRadix\":null,\"sqlDataType\":null,\"sqlDatetimeSub\":null,\"charOctetLength\":null,\"ordinalPosition\":7,\"nullable\":1,\"generatedColumn\":null,\"extent\":null,\"editStatus\":null,\"charSetName\":\"utf8mb4\",\"collationName\":\"utf8mb4_general_ci\",\"value\":null,\"unit\":null,\"sparse\":null,\"defaultConstraintName\":null},{\"oldColumn\":null,\"oldName\":\"is_frame\",\"name\":\"is_frame\",\"tableName\":\"sys_menu\",\"columnType\":\"INT\",\"dataType\":null,\"defaultValue\":\"1\",\"autoIncrement\":false,\"comment\":\"是否为外链(0是 1否)\",\"primaryKey\":false,\"primaryKeyName\":null,\"primaryKeyOrder\":0,\"schemaName\":null,\"databaseName\":\"ry-cloud\",\"columnSize\":1,\"bufferLength\":null,\"decimalDigits\":0,\"numPrecRadix\":null,\"sqlDataType\":null,\"sqlDatetimeSub\":null,\"charOctetLength\":null,\"ordinalPosition\":8,\"nullable\":1,\"generatedColumn\":null,\"extent\":null,\"editStatus\":null,\"charSetName\":null,\"collationName\":null,\"value\":null,\"unit\":null,\"sparse\":null,\"defaultConstraintName\":null},{\"oldColumn\":null,\"oldName\":\"is_cache\",\"name\":\"is_cache\",\"tableName\":\"sys_menu\",\"columnType\":\"INT\",\"dataType\":null,\"defaultValue\":\"0\",\"autoIncrement\":false,\"comment\":\"是否缓存(0缓存 1不缓存)\",\"primaryKey\":false,\"primaryKeyName\":null,\"primaryKeyOrder\":0,\"schemaName\":null,\"databaseName\":\"ry-cloud\",\"columnSize\":1,\"bufferLength\":null,\"decimalDigits\":0,\"numPrecRadix\":null,\"sqlDataType\":null,\"sqlDatetimeSub\":null,\"charOctetLength\":null,\"ordinalPosition\":9,\"nullable\":1,\"generatedColumn\":null,\"extent\":null,\"editStatus\":null,\"charSetName\":null,\"collationName\":null,\"value\":null,\"unit\":null,\"sparse\":null,\"defaultConstraintName\":null},{\"oldColumn\":null,\"oldName\":\"menu_type\",\"name\":\"menu_type\",\"tableName\":\"sys_menu\",\"columnType\":\"CHAR\",\"dataType\":null,\"defaultValue\":\"\",\"autoIncrement\":false,\"comment\":\"菜单类型(M目录 C菜单 F按钮)\",\"primaryKey\":false,\"primaryKeyName\":null,\"primaryKeyOrder\":0,\"schemaName\":null,\"databaseName\":\"ry-cloud\",\"columnSize\":1,\"bufferLength\":null,\"decimalDigits\":0,\"numPrecRadix\":null,\"sqlDataType\":null,\"sqlDatetimeSub\":null,\"charOctetLength\":null,\"ordinalPosition\":10,\"nullable\":1,\"generatedColumn\":null,\"extent\":null,\"editStatus\":null,\"charSetName\":\"utf8mb4\",\"collationName\":\"utf8mb4_general_ci\",\"value\":null,\"unit\":null,\"sparse\":null,\"defaultConstraintName\":null},{\"oldColumn\":null,\"oldName\":\"visible\",\"name\":\"visible\",\"tableName\":\"sys_menu\",\"columnType\":\"CHAR\",\"dataType\":null,\"defaultValue\":\"0\",\"autoIncrement\":false,\"comment\":\"菜单状态(0显示 1隐藏)\",\"primaryKey\":false,\"primaryKeyName\":null,\"primaryKeyOrder\":0,\"schemaName\":null,\"databaseName\":\"ry-cloud\",\"columnSize\":1,\"bufferLength\":null,\"decimalDigits\":0,\"numPrecRadix\":null,\"sqlDataType\":null,\"sqlDatetimeSub\":null,\"charOctetLength\":null,\"ordinalPosition\":11,\"nullable\":1,\"generatedColumn\":null,\"extent\":null,\"editStatus\":null,\"charSetName\":\"utf8mb4\",\"collationName\":\"utf8mb4_general_ci\",\"value\":null,\"unit\":null,\"sparse\":null,\"defaultConstraintName\":null},{\"oldColumn\":null,\"oldName\":\"status\",\"name\":\"status\",\"tableName\":\"sys_menu\",\"columnType\":\"CHAR\",\"dataType\":null,\"defaultValue\":\"0\",\"autoIncrement\":false,\"comment\":\"菜单状态(0正常 1停用)\",\"primaryKey\":false,\"primaryKeyName\":null,\"primaryKeyOrder\":0,\"schemaName\":null,\"databaseName\":\"ry-cloud\",\"columnSize\":1,\"bufferLength\":null,\"decimalDigits\":0,\"numPrecRadix\":null,\"sqlDataType\":null,\"sqlDatetimeSub\":null,\"charOctetLength\":null,\"ordinalPosition\":12,\"nullable\":1,\"generatedColumn\":null,\"extent\":null,\"editStatus\":null,\"charSetName\":\"utf8mb4\",\"collationName\":\"utf8mb4_general_ci\",\"value\":null,\"unit\":null,\"sparse\":null,\"defaultConstraintName\":null},{\"oldColumn\":null,\"oldName\":\"perms\",\"name\":\"perms\",\"tableName\":\"sys_menu\",\"columnType\":\"VARCHAR\",\"dataType\":null,\"defaultValue\":null,\"autoIncrement\":false,\"comment\":\"权限标识\",\"primaryKey\":false,\"primaryKeyName\":null,\"primaryKeyOrder\":0,\"schemaName\":null,\"databaseName\":\"ry-cloud\",\"columnSize\":100,\"bufferLength\":null,\"decimalDigits\":0,\"numPrecRadix\":null,\"sqlDataType\":null,\"sqlDatetimeSub\":null,\"charOctetLength\":null,\"ordinalPosition\":13,\"nullable\":1,\"generatedColumn\":null,\"extent\":null,\"editStatus\":null,\"charSetName\":\"utf8mb4\",\"collationName\":\"utf8mb4_general_ci\",\"value\":null,\"unit\":null,\"sparse\":null,\"defaultConstraintName\":null},{\"oldColumn\":null,\"oldName\":\"icon\",\"name\":\"icon\",\"tableName\":\"sys_menu\",\"columnType\":\"VARCHAR\",\"dataType\":null,\"defaultValue\":\"#\",\"autoIncrement\":false,\"comment\":\"菜单图标\",\"primaryKey\":false,\"primaryKeyName\":null,\"primaryKeyOrder\":0,\"schemaName\":null,\"databaseName\":\"ry-cloud\",\"columnSize\":100,\"bufferLength\":null,\"decimalDigits\":0,\"numPrecRadix\":null,\"sqlDataType\":null,\"sqlDatetimeSub\":null,\"charOctetLength\":null,\"ordinalPosition\":14,\"nullable\":1,\"generatedColumn\":null,\"extent\":null,\"editStatus\":null,\"charSetName\":\"utf8mb4\",\"collationName\":\"utf8mb4_general_ci\",\"value\":null,\"unit\":null,\"sparse\":null,\"defaultConstraintName\":null},{\"oldColumn\":null,\"oldName\":\"create_by\",\"name\":\"create_by\",\"tableName\":\"sys_menu\",\"columnType\":\"VARCHAR\",\"dataType\":null,\"defaultValue\":\"\",\"autoIncrement\":false,\"comment\":\"创建者\",\"primaryKey\":false,\"primaryKeyName\":null,\"primaryKeyOrder\":0,\"schemaName\":null,\"databaseName\":\"ry-cloud\",\"columnSize\":64,\"bufferLength\":null,\"decimalDigits\":0,\"numPrecRadix\":null,\"sqlDataType\":null,\"sqlDatetimeSub\":null,\"charOctetLength\":null,\"ordinalPosition\":15,\"nullable\":1,\"generatedColumn\":null,\"extent\":null,\"editStatus\":null,\"charSetName\":\"utf8mb4\",\"collationName\":\"utf8mb4_general_ci\",\"value\":null,\"unit\":null,\"sparse\":null,\"defaultConstraintName\":null},{\"oldColumn\":null,\"oldName\":\"create_time\",\"name\":\"create_time\",\"tableName\":\"sys_menu\",\"columnType\":\"DATETIME\",\"dataType\":null,\"defaultValue\":null,\"autoIncrement\":false,\"comment\":\"创建时间\",\"primaryKey\":false,\"primaryKeyName\":null,\"primaryKeyOrder\":0,\"schemaName\":null,\"databaseName\":\"ry-cloud\",\"columnSize\":null,\"bufferLength\":null,\"decimalDigits\":0,\"numPrecRadix\":null,\"sqlDataType\":null,\"sqlDatetimeSub\":null,\"charOctetLength\":null,\"ordinalPosition\":16,\"nullable\":1,\"generatedColumn\":null,\"extent\":null,\"editStatus\":null,\"charSetName\":null,\"collationName\":null,\"value\":null,\"unit\":null,\"sparse\":null,\"defaultConstraintName\":null},{\"oldColumn\":null,\"oldName\":\"update_by\",\"name\":\"update_by\",\"tableName\":\"sys_menu\",\"columnType\":\"VARCHAR\",\"dataType\":null,\"defaultValue\":\"\",\"autoIncrement\":false,\"comment\":\"更新者\",\"primaryKey\":false,\"primaryKeyName\":null,\"primaryKeyOrder\":0,\"schemaName\":null,\"databaseName\":\"ry-cloud\",\"columnSize\":64,\"bufferLength\":null,\"decimalDigits\":0,\"numPrecRadix\":null,\"sqlDataType\":null,\"sqlDatetimeSub\":null,\"charOctetLength\":null,\"ordinalPosition\":17,\"nullable\":1,\"generatedColumn\":null,\"extent\":null,\"editStatus\":null,\"charSetName\":\"utf8mb4\",\"collationName\":\"utf8mb4_general_ci\",\"value\":null,\"unit\":null,\"sparse\":null,\"defaultConstraintName\":null},{\"oldColumn\":null,\"oldName\":\"update_time\",\"name\":\"update_time\",\"tableName\":\"sys_menu\",\"columnType\":\"DATETIME\",\"dataType\":null,\"defaultValue\":null,\"autoIncrement\":false,\"comment\":\"更新时间\",\"primaryKey\":false,\"primaryKeyName\":null,\"primaryKeyOrder\":0,\"schemaName\":null,\"databaseName\":\"ry-cloud\",\"columnSize\":null,\"bufferLength\":null,\"decimalDigits\":0,\"numPrecRadix\":null,\"sqlDataType\":null,\"sqlDatetimeSub\":null,\"charOctetLength\":null,\"ordinalPosition\":18,\"nullable\":1,\"generatedColumn\":null,\"extent\":null,\"editStatus\":null,\"charSetName\":null,\"collationName\":null,\"value\":null,\"unit\":null,\"sparse\":null,\"defaultConstraintName\":null},{\"oldColumn\":null,\"oldName\":\"remark\",\"name\":\"remark\",\"tableName\":\"sys_menu\",\"columnType\":\"VARCHAR\",\"dataType\":null,\"defaultValue\":\"\",\"autoIncrement\":false,\"comment\":\"备注\",\"primaryKey\":false,\"primaryKeyName\":null,\"primaryKeyOrder\":0,\"schemaName\":null,\"databaseName\":\"ry-cloud\",\"columnSize\":500,\"bufferLength\":null,\"decimalDigits\":0,\"numPrecRadix\":null,\"sqlDataType\":null,\"sqlDatetimeSub\":null,\"charOctetLength\":null,\"ordinalPosition\":19,\"nullable\":1,\"generatedColumn\":null,\"extent\":null,\"editStatus\":null,\"charSetName\":\"utf8mb4\",\"collationName\":\"utf8mb4_general_ci\",\"value\":null,\"unit\":null,\"sparse\":null,\"defaultConstraintName\":null}],\"indexList\":[],\"dbType\":null,\"databaseName\":\"ry-cloud\",\"type\":\"TABLE\",\"pinned\":false,\"ddl\":null,\"engine\":null,\"charset\":null,\"collate\":null,\"incrementValue\":null,\"partition\":null,\"tablespace\":null}}",
    "errorCode":"common.systemError",
    "errorMessage":"An exception occurs, you can view the exception details in the log in the help menu.",
    "errorDetail":"java.lang.ArrayIndexOutOfBoundsException: Index -2 out of bounds for length 19\n\tat ai.chat2db.plugin.mysql.builder.MysqlSqlBuilder.isMoveValid(MysqlSqlBuilder.java:275)\n\tat ai.chat2db.plugin.mysql.builder.MysqlSqlBuilder.buildSql(MysqlSqlBuilder.java:227)\n\tat ai.chat2db.plugin.mysql.builder.MysqlSqlBuilder.buildGenerateReorderColumnSql(MysqlSqlBuilder.java:166)\n\tat ai.chat2db.plugin.mysql.builder.MysqlSqlBuilder.buildModifyTaleSql(MysqlSqlBuilder.java:114)\n\tat ai.chat2db.server.domain.core.impl.TableServiceImpl.buildSql(TableServiceImpl.java:167)\n\tat ai.chat2db.server.web.api.controller.rdb.TableController.modifySql(TableController.java:215)\n\tat jdk.internal.reflect.GeneratedMethodAccessor249.invoke(Unknown Source)\n\tat java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)\n\tat java.base/java.lang.reflect.Method.invoke(Unknown Source)\n\tat org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:343)\n\tat org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:196)\n\tat org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163)\n\tat org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:750)\n\tat org.springframework.aop.aspectj.MethodInvocationProceedingJoinPoint.proceed(MethodInvocationProceedingJoinPoint.java:89)\n\tat ai.chat2db.server.web.api.aspect.ConnectionInfoHandler.connectionInfoHandler(ConnectionInfoHandler.java:62)\n\tat jdk.internal.reflect.GeneratedMethodAccessor83.invoke(Unknown Source)\n\tat java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)\n\tat java.base/java.lang.reflect.Method.invoke(Unknown Source)\n\tat org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethodWithGivenArgs(AbstractAspectJAdvice.java:637)\n\tat org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethod(AbstractAspectJAdvice.java:627)\n\tat org.springframework.aop.aspectj.AspectJAroundAdvice.invoke(AspectJAroundAdvice.java:71)\n\tat org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:184)\n\tat org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:750)\n\tat org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:97)\n\tat org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:184)\n\tat org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:750)\n\tat org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:702)\n\tat ai.chat2db.server.web.api.controller.rdb.TableController$$SpringCGLIB$$0.modifySql(<generated>)\n\tat jdk.internal.reflect.GeneratedMethodAccessor249.invoke(Unknown Source)\n\tat java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)\n\tat java.base/java.lang.reflect.Method.invoke(Unknown Source)\n\tat org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:207)\n\tat org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:152)\n\tat org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:118)\n\tat org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:884)\n\tat org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:797)\n\tat org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)\n\tat org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1081)\n\tat org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:974)\n\tat org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1011)\n\tat org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:914)\n\tat jakarta.servlet.http.HttpServlet.service(HttpServlet.java:590)\n\tat org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:885)\n\tat jakarta.servlet.http.HttpServlet.service(HttpServlet.java:658)\n\tat org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:205)\n\tat org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149)\n\tat org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)\n\tat org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174)\n\tat org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149)\n\tat ai.chat2db.server.start.config.interceptor.CorsFilter.doFilter(CorsFilter.java:37)\n\tat org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174)\n\tat org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149)\n\tat org.zalando.logbook.servlet.LogbookFilter.doFilter(LogbookFilter.java:76)\n\tat org.zalando.logbook.servlet.HttpFilter.doFilter(HttpFilter.java:32)\n\tat org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174)\n\tat org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149)\n\tat org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)\n\tat org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)\n\tat org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174)\n\tat org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149)\n\tat org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)\n\tat org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)\n\tat org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174)\n\tat org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149)\n\tat org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)\n\tat org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)\n\tat org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174)\n\tat org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149)\n\tat ai.chat2db.server.start.log.LogOncePerRequestFilter.doFilterInternal(LogOncePerRequestFilter.java:32)\n\tat org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)\n\tat org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174)\n\tat org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149)\n\tat org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:166)\n\tat org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90)\n\tat org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:482)\n\tat org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:115)\n\tat org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93)\n\tat org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)\n\tat org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:341)\n\tat org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:390)\n\tat org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63)\n\tat org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:894)\n\tat org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1741)\n\tat org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52)\n\tat org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191)\n\tat org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)\n\tat org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)\n\tat java.base/java.lang.Thread.run(Unknown Source)\n",
    "solutionLink":"https://github.com/chat2db/Chat2DB/wiki/Chat2DB"
}

错误截图:

image

@Luckytiger666 Luckytiger666 added the bug Something isn't working label Jan 10, 2024
@tmlx1990
Copy link
Contributor

只改了字段名吗?还有没有做其他操作?

@Luckytiger666
Copy link
Author

只改了字段名,有时候单更改排序也会报错

@Luckytiger666
Copy link
Author

Luckytiger666 commented Jan 10, 2024

刚刚尝试更改不同的表,都不行,会报ArrayIndexOutOfBoundsException
尝试其他操作,如更改字段类型,更改索引名称,添加字段等,都是正常的
刚刚试了单独只移动字段顺序,没有报错。应该只存在于更改字段名称

@tmlx1990
Copy link
Contributor

刚刚尝试更改不同的表,都不行,会报ArrayIndexOutOfBoundsException 尝试其他操作,如更改字段类型,更改索引名称,添加字段等,都是正常的 刚刚试了单独只移动字段顺序,没有报错。应该只存在于更改字段名称

好的 我看看什么问题

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

3 participants