mirror of
https://github.com/CodePhiliaX/Chat2DB.git
synced 2025-07-30 11:12:55 +08:00
fix columnType error
This commit is contained in:
@ -16,7 +16,6 @@ import java.sql.ResultSetMetaData;
|
||||
import java.sql.SQLException;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Objects;
|
||||
|
||||
public class SqlServerDBManage extends DefaultDBManage implements DBManage {
|
||||
private String tableDDLFunction
|
||||
@ -108,7 +107,7 @@ public class SqlServerDBManage extends DefaultDBManage implements DBManage {
|
||||
for (int i = 1; i <= metaData.getColumnCount(); i++) {
|
||||
ValueProcessor valueProcessor = Chat2DBContext.getMetaData().getValueProcessor();
|
||||
JDBCDataValue jdbcDataValue = new JDBCDataValue(resultSet, metaData, i, false);
|
||||
String valueString = valueProcessor.getJdbcValueString(jdbcDataValue);
|
||||
String valueString = valueProcessor.getJdbcSqlValueString(jdbcDataValue);
|
||||
valueList.add(valueString);
|
||||
}
|
||||
String insertSql = sqlBuilder.buildSingleInsertSql(databaseName, schemaName, tableName, columnList, valueList);
|
||||
|
@ -17,6 +17,7 @@ import ai.chat2db.spi.jdbc.DefaultMetaService;
|
||||
import ai.chat2db.spi.model.*;
|
||||
import ai.chat2db.spi.sql.SQLExecutor;
|
||||
import ai.chat2db.spi.util.SortUtils;
|
||||
import ai.chat2db.spi.util.SqlUtils;
|
||||
import com.google.common.collect.Lists;
|
||||
import jakarta.validation.constraints.NotEmpty;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
@ -131,7 +132,9 @@ public class SqlServerMetaData extends DefaultMetaService implements MetaData {
|
||||
column.setOldName(resultSet.getString("COLUMN_NAME"));
|
||||
column.setName(resultSet.getString("COLUMN_NAME"));
|
||||
//column.setColumnType(resultSet.getString("COLUMN_TYPE"));
|
||||
column.setColumnType(resultSet.getString("DATA_TYPE").toUpperCase());
|
||||
String dataType = resultSet.getString("DATA_TYPE").toUpperCase();
|
||||
column.setColumnType(SqlUtils.removeDigits(dataType));
|
||||
|
||||
//column.setDataType(resultSet.getInt("DATA_TYPE"));
|
||||
column.setDefaultValue(resultSet.getString("COLUMN_DEFAULT"));
|
||||
//column.setAutoIncrement(resultSet.getString("EXTRA").contains("auto_increment"));
|
||||
|
@ -4,6 +4,7 @@ import ai.chat2db.spi.ColumnBuilder;
|
||||
import ai.chat2db.spi.enums.EditStatus;
|
||||
import ai.chat2db.spi.model.ColumnType;
|
||||
import ai.chat2db.spi.model.TableColumn;
|
||||
import ai.chat2db.spi.util.SqlUtils;
|
||||
import com.google.common.collect.Maps;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
|
||||
@ -103,7 +104,7 @@ public enum SqlServerColumnTypeEnum implements ColumnBuilder {
|
||||
private ColumnType columnType;
|
||||
|
||||
public static SqlServerColumnTypeEnum getByType(String dataType) {
|
||||
SqlServerColumnTypeEnum typeEnum = COLUMN_TYPE_MAP.get(dataType.toUpperCase());
|
||||
SqlServerColumnTypeEnum typeEnum = COLUMN_TYPE_MAP.get(SqlUtils.removeDigits(dataType.toUpperCase()));
|
||||
if (typeEnum == null) {
|
||||
return OTHER;
|
||||
}
|
||||
|
Reference in New Issue
Block a user