mirror of
https://gitee.com/johng/gf
synced 2026-06-06 02:25:47 +08:00
## Summary - Add wildcard pattern support (`*` and `?`) for `tables` configuration - Fix `tablesEx` wildcard to use exact match (`^$`) for consistency - Add warning when exact table name does not exist - Add unit tests and integration tests for MySQL and PostgreSQL ## Changes | Configuration | Before | After | |---------------|--------|-------| | `tables: "user_*"` | Not supported | Matches tables starting with "user_" | | `tables: "*"` | Not supported | Matches all tables | | `tablesEx: "user_*"` | Partial match | Exact match (consistent with tables) | ## Features - `*` matches any characters (e.g., `user_*` matches `user_info`, `user_log`) - `?` matches single character (e.g., `user_???` matches `user_log` but not `user_info`) - Mixed patterns and exact names supported (e.g., `tables: "user_*,config"`) - Non-existent exact table names are skipped with warning message ## Test plan - [x] Unit tests for `containsWildcard`, `patternToRegex`, `filterTablesByPatterns` (11 cases) - [x] Integration tests for MySQL (5 cases) - [x] Integration tests for PostgreSQL (1 case with tables + tablesEx) - [x] Standard SQL syntax for cross-database compatibility Closes #4629 --------- Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>