【8.0】【db】更新数据库支持种类

pull/57/head
fengshuonan 2023-09-22 14:14:38 +08:00
parent 1f5c9f5fcc
commit 664a258aad
2 changed files with 51 additions and 5 deletions

View File

@ -28,15 +28,25 @@ public enum DbTypeEnum {
*/ */
ORACLE("jdbc:oracle", "oracle", "select 1 from dual"), ORACLE("jdbc:oracle", "oracle", "select 1 from dual"),
/**
* mssql
*/
MS_SQL("jdbc:jtds:sqlserver", "mssql", "select 1"),
/** /**
* 使oraclemapping.xml * 使oraclemapping.xml
*/ */
DM("jdbc:dm", "oracle", "select 1 from dual"), DM("jdbc:dm", "oracle", "select 1 from dual"),
/** /**
* mssql *
*/ */
MS_SQL("jdbc:jtds:sqlserver", "mssql", "select 1"); VAST_DATA("jdbc:vastbase", "pgsql", "select version()"),
/**
*
*/
KING_BASE("jdbc:kingbase8", "pgsql", "select version()");
/** /**
* spring.datasource.url * spring.datasource.url

View File

@ -44,17 +44,26 @@ public abstract class AbstractSql {
* @since 2020/10/31 23:44 * @since 2020/10/31 23:44
*/ */
public String getSql(String jdbcUrl) { public String getSql(String jdbcUrl) {
if (jdbcUrl.contains(DbTypeEnum.MYSQL.getUrlWords())) {
return mysql();
}
if (jdbcUrl.contains(DbTypeEnum.PG_SQL.getUrlWords())) {
return pgSql();
}
if (jdbcUrl.contains(DbTypeEnum.ORACLE.getUrlWords())) { if (jdbcUrl.contains(DbTypeEnum.ORACLE.getUrlWords())) {
return oracle(); return oracle();
} }
if (jdbcUrl.contains(DbTypeEnum.DM.getUrlWords())) { if (jdbcUrl.contains(DbTypeEnum.DM.getUrlWords())) {
return oracle(); return dm();
} }
if (jdbcUrl.contains(DbTypeEnum.MS_SQL.getUrlWords())) { if (jdbcUrl.contains(DbTypeEnum.MS_SQL.getUrlWords())) {
return sqlServer(); return sqlServer();
} }
if (jdbcUrl.contains(DbTypeEnum.PG_SQL.getUrlWords())) { if (jdbcUrl.contains(DbTypeEnum.VAST_DATA.getUrlWords())) {
return pgSql(); return vastbase();
}
if (jdbcUrl.contains(DbTypeEnum.KING_BASE.getUrlWords())) {
return kingbase();
} }
return mysql(); return mysql();
} }
@ -95,4 +104,31 @@ public abstract class AbstractSql {
*/ */
protected abstract String oracle(); protected abstract String oracle();
/**
* sql
*
* @return sql
* @author fengshuonan
* @since 2023/9/22 14:12
*/
protected abstract String dm();
/**
* sql
*
* @return sql
* @author fengshuonan
* @since 2023/9/22 14:12
*/
protected abstract String kingbase();
/**
* sql
*
* @return sql
* @author fengshuonan
* @since 2023/9/22 14:12
*/
protected abstract String vastbase();
} }