提交 116694d1 authored 作者: 宋勇's avatar 宋勇

修改jdbc 主键bug

上级 4223d469
......@@ -160,7 +160,7 @@ public class AccessJdbcDataSourceChannel implements DataSourceChannelExt {
List<TableField> tableFields = new ArrayList<>();
try (Connection connection = getConnection(requestParams, database)) {
DatabaseMetaData metaData = connection.getMetaData();
String primaryKey = getPrimaryKey(metaData, database, table);
// String primaryKey = getPrimaryKey(metaData, database, table);
String sql =
"select * from INFORMATION_SCHEMA.SYSTEM_columns where TABLE_NAME='"
......@@ -172,9 +172,9 @@ public class AccessJdbcDataSourceChannel implements DataSourceChannelExt {
TableField tableField = new TableField();
String columnName = resultSet.getString("COLUMN_NAME");
tableField.setPrimaryKey(false);
if (StringUtils.isNotBlank(primaryKey) && primaryKey.equals(columnName)) {
tableField.setPrimaryKey(true);
}
// if (StringUtils.isNotBlank(primaryKey) && primaryKey.equals(columnName)) {
// tableField.setPrimaryKey(true);
// }
tableField.setType(resultSet.getString("TYPE_NAME"));
if (typeList.contains(tableField.getType().toLowerCase())) {
if (tableField.getType().toLowerCase().indexOf("text") < 0) {
......
......@@ -167,7 +167,7 @@ public class DamengJdbcDataSourceChannel implements DataSourceChannelExt {
List<TableField> tableFields = new ArrayList<>();
try (Connection connection = getConnection(requestParams, database)) {
DatabaseMetaData metaData = connection.getMetaData();
String primaryKey = getPrimaryKey(metaData, database, table);
// String primaryKey = getPrimaryKey(metaData, database, table);
String sql =
" select * from SYSCOLUMNS where id in (select id from SYSOBJECTS where name='"
......@@ -179,9 +179,10 @@ public class DamengJdbcDataSourceChannel implements DataSourceChannelExt {
TableField tableField = new TableField();
String columnName = resultSet.getString("NAME");
tableField.setPrimaryKey(false);
if (StringUtils.isNotBlank(primaryKey) && primaryKey.equals(columnName)) {
tableField.setPrimaryKey(true);
}
// if (StringUtils.isNotBlank(primaryKey) && primaryKey.equals(columnName)) {
// tableField.setPrimaryKey(true);
// }
tableField.setType(resultSet.getString("TYPE$"));
if (typeList.contains(tableField.getType().toLowerCase())) {
if (tableField.getType().toLowerCase().indexOf("text") < 0) {
......@@ -193,7 +194,7 @@ public class DamengJdbcDataSourceChannel implements DataSourceChannelExt {
}
String extra = resultSet.getString("INFO2");
if (StringUtils.isNotBlank(extra) && extra.trim().equals("1")) {
tableField.setHasAutoIncrement(true);
tableField.setPrimaryKey(true);
}
tableField.setName(columnName);
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论