diff --git a/database/gdb/gdb_model_utility.go b/database/gdb/gdb_model_utility.go index 48e6e974e..54fea9972 100644 --- a/database/gdb/gdb_model_utility.go +++ b/database/gdb/gdb_model_utility.go @@ -37,6 +37,12 @@ func (m *Model) TableFields(tableStr string, schema ...string) (fields map[strin usedTable = m.db.GetCore().guessPrimaryTableName(tableStr) usedSchema = gutil.GetOrDefaultStr(m.schema, schema...) ) + // Strip quote characters from schema name, as it may come from cross-database + // table parsing (e.g., `schema`.`table`) and contain database-specific quote chars. + charL, charR := m.db.GetChars() + if usedSchema != "" && (charL != "" || charR != "") { + usedSchema = gstr.Trim(usedSchema, charL+charR) + } // Sharding feature. usedSchema, err = m.getActualSchema(ctx, usedSchema) if err != nil {