@@ -130,6 +130,11 @@ public abstract class AbstractSQLConfig<T extends Object> implements SQLConfig<T
130130 public static Pattern PATTERN_RANGE ;
131131 public static Pattern PATTERN_FUNCTION ;
132132
133+ /**
134+ * 表 SCHEMA 映射
135+ */
136+ public static Map <String , String > TABLE_SCHEMA_MAP ;
137+
133138 /**
134139 * 表名映射,隐藏真实表名,对安全要求很高的表可以这么做
135140 */
@@ -157,6 +162,19 @@ public abstract class AbstractSQLConfig<T extends Object> implements SQLConfig<T
157162 // TODO 改成更好的正则,校验前面为单词,中间为操作符,后面为值
158163 PATTERN_FUNCTION = Pattern .compile ("^[A-Za-z0-9%,:_@&~`!=\\ <\\ >\\ |\\ [\\ ]\\ {\\ } /\\ .\\ +\\ -\\ *\\ ^\\ ?\\ (\\ )\\ $]+$" );
159164
165+ TABLE_SCHEMA_MAP = new HashMap <>();
166+ TABLE_SCHEMA_MAP .put (Table .class .getSimpleName (), DEFAULT_SCHEMA );
167+ TABLE_SCHEMA_MAP .put (Column .class .getSimpleName (), DEFAULT_SCHEMA );
168+ TABLE_SCHEMA_MAP .put (PgClass .class .getSimpleName (), DEFAULT_SCHEMA );
169+ TABLE_SCHEMA_MAP .put (PgAttribute .class .getSimpleName (), DEFAULT_SCHEMA );
170+ TABLE_SCHEMA_MAP .put (SysTable .class .getSimpleName (), DEFAULT_SCHEMA );
171+ TABLE_SCHEMA_MAP .put (SysColumn .class .getSimpleName (), DEFAULT_SCHEMA );
172+ TABLE_SCHEMA_MAP .put (ExtendedProperty .class .getSimpleName (), DEFAULT_SCHEMA );
173+ TABLE_SCHEMA_MAP .put (AllTable .class .getSimpleName (), DEFAULT_SCHEMA );
174+ TABLE_SCHEMA_MAP .put (AllColumn .class .getSimpleName (), DEFAULT_SCHEMA );
175+ TABLE_SCHEMA_MAP .put (AllTableComment .class .getSimpleName (), DEFAULT_SCHEMA );
176+ TABLE_SCHEMA_MAP .put (AllColumnComment .class .getSimpleName (), DEFAULT_SCHEMA );
177+
160178 TABLE_KEY_MAP = new HashMap <>();
161179 TABLE_KEY_MAP .put (Table .class .getSimpleName (), Table .TABLE_NAME );
162180 TABLE_KEY_MAP .put (Column .class .getSimpleName (), Column .TABLE_NAME );
@@ -1320,7 +1338,8 @@ public String getSQLSchema() {
13201338 return "" ; //Oracle, Dameng 的 all_tables, dba_tables 和 all_tab_columns, dba_columns 表好像不属于任何 Schema
13211339 }
13221340
1323- String sch = getSchema ();
1341+ //String sch = getSchema();
1342+ String sch = TABLE_SCHEMA_MAP .get (table );
13241343 return sch == null ? DEFAULT_SCHEMA : sch ;
13251344 }
13261345 @ Override
0 commit comments