Skip to content

Commit 8625bc2

Browse files
committed
修复移动列到删除列后边生成SQL错误的问题
1 parent 47c621e commit 8625bc2

File tree

1 file changed

+8
-3
lines changed
  • chat2db-server/chat2db-plugins/chat2db-mysql/src/main/java/ai/chat2db/plugin/mysql/builder

1 file changed

+8
-3
lines changed

chat2db-server/chat2db-plugins/chat2db-mysql/src/main/java/ai/chat2db/plugin/mysql/builder/MysqlSqlBuilder.java

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,12 @@
22

33
import ai.chat2db.plugin.mysql.type.MysqlColumnTypeEnum;
44
import ai.chat2db.plugin.mysql.type.MysqlIndexTypeEnum;
5-
import ai.chat2db.spi.SqlBuilder;
5+
import ai.chat2db.spi.enums.EditStatus;
66
import ai.chat2db.spi.jdbc.DefaultSqlBuilder;
77
import ai.chat2db.spi.model.Database;
88
import ai.chat2db.spi.model.Table;
99
import ai.chat2db.spi.model.TableColumn;
1010
import ai.chat2db.spi.model.TableIndex;
11-
import cn.hutool.core.util.ArrayUtil;
1211
import org.apache.commons.lang3.StringUtils;
1312

1413
import java.util.*;
@@ -145,7 +144,13 @@ private String findPrevious(TableColumn tableColumn, Table newTable) {
145144
if (index == 0) {
146145
return "-1";
147146
}
148-
return newTable.getColumnList().get(index - 1).getName();
147+
// Find the previous column that is not deleted
148+
for (int i = index - 1; i >= 0; i--) {
149+
if (newTable.getColumnList().get(i).getEditStatus() == null || !newTable.getColumnList().get(i).getEditStatus().equals(EditStatus.DELETE.name())) {
150+
return newTable.getColumnList().get(i).getName();
151+
}
152+
}
153+
return "-1";
149154
}
150155

151156
@Override

0 commit comments

Comments
 (0)