Reviewed-on: https://gitea.com/xorm/xorm/pulls/1841
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
Co-committed-by: Lunny Xiao <xiaolunwen@gmail.com>
This commit is contained in:
Lunny Xiao 2021-01-05 10:42:14 +08:00
parent 7c8d3f1ad9
commit b65276da85
2 changed files with 6 additions and 3 deletions

View File

@ -483,7 +483,7 @@ func (db *sqlite3) GetIndexes(queryer core.Queryer, ctx context.Context, tableNa
continue
}
indexName := strings.Trim(sql[nNStart+6:nNEnd], "` []'\"")
indexName := strings.Trim(strings.TrimSpace(sql[nNStart+6:nNEnd]), "`[]'\"")
var isRegular bool
if strings.HasPrefix(indexName, "IDX_"+tableName) || strings.HasPrefix(indexName, "UQE_"+tableName) {
index.Name = indexName[5+len(tableName):]

View File

@ -359,13 +359,16 @@ func (engine *Engine) loadTableInfo(table *schemas.Table) error {
var seq int
for _, index := range indexes {
for _, name := range index.Cols {
parts := strings.Split(name, " ")
parts := strings.Split(strings.TrimSpace(name), " ")
if len(parts) > 1 {
if parts[1] == "DESC" {
seq = 1
} else if parts[1] == "ASC" {
seq = 0
}
}
if col := table.GetColumn(parts[0]); col != nil {
var colName = strings.Trim(parts[0], `"`)
if col := table.GetColumn(colName); col != nil {
col.Indexes[index.Name] = index.Type
} else {
return fmt.Errorf("Unknown col %s seq %d, in index %v of table %v, columns %v", name, seq, index.Name, table.Name, table.ColumnsSeq())