fix: 关联数据集识别字段类型错误

This commit is contained in:
taojinlong 2023-12-20 15:47:32 +08:00
parent c8fb6d1feb
commit 70ee4b2c13
2 changed files with 3 additions and 3 deletions

View File

@ -2169,7 +2169,7 @@ public class DataSetTableService {
datasetTableField.setType(field.getFieldType()); datasetTableField.setType(field.getFieldType());
datasetTableField.setSize(field.getFieldSize()); datasetTableField.setSize(field.getFieldSize());
datasetTableField.setAccuracy(field.getAccuracy()); datasetTableField.setAccuracy(field.getAccuracy());
if (ObjectUtils.isEmpty(ds)) { if (StringUtils.isEmpty(datasetTable.getDataSourceId())) {
datasetTableField.setDeExtractType(transFieldType(field.getFieldType())); datasetTableField.setDeExtractType(transFieldType(field.getFieldType()));
} else { } else {
Integer fieldType = qp.transFieldType(field.getFieldType()); Integer fieldType = qp.transFieldType(field.getFieldType());
@ -2185,7 +2185,7 @@ public class DataSetTableService {
datasetTableField.setDataeaseName(TableUtils.columnName(field.getFieldName())); datasetTableField.setDataeaseName(TableUtils.columnName(field.getFieldName()));
} }
datasetTableField.setType(field.getFieldType()); datasetTableField.setType(field.getFieldType());
if (ObjectUtils.isEmpty(ds)) { if (StringUtils.isEmpty(datasetTable.getDataSourceId())) {
datasetTableField.setDeType(transFieldType(field.getFieldType())); datasetTableField.setDeType(transFieldType(field.getFieldType()));
datasetTableField.setDeExtractType(transFieldType(field.getFieldType())); datasetTableField.setDeExtractType(transFieldType(field.getFieldType()));
} else { } else {

View File

@ -646,7 +646,7 @@ public class ExtractDataService {
JdbcProvider jdbcProvider = CommonBeanFactory.getBean(JdbcProvider.class); JdbcProvider jdbcProvider = CommonBeanFactory.getBean(JdbcProvider.class);
DatasourceRequest datasourceRequest = new DatasourceRequest(); DatasourceRequest datasourceRequest = new DatasourceRequest();
datasourceRequest.setDatasource(engine); datasourceRequest.setDatasource(engine);
datasourceRequest.setQuery("mysql> SELECT VERSION();"); datasourceRequest.setQuery("SELECT VERSION()");
String version = jdbcProvider.getData(datasourceRequest).get(0)[0]; String version = jdbcProvider.getData(datasourceRequest).get(0)[0];
DDLProvider ddlProvider = ProviderFactory.getDDLProvider(engine.getType()); DDLProvider ddlProvider = ProviderFactory.getDDLProvider(engine.getType());
datasourceRequest.setQuery(ddlProvider.createTableSql(tableName, datasetTableFields, engine, version)); datasourceRequest.setQuery(ddlProvider.createTableSql(tableName, datasetTableFields, engine, version));