diff --git a/server/internal/db/api/db.go b/server/internal/db/api/db.go index 8b6dae4d..77282b8b 100644 --- a/server/internal/db/api/db.go +++ b/server/internal/db/api/db.go @@ -174,9 +174,15 @@ func (d *Db) ExecSqlFile(rc *req.Ctx) { go func() { defer func() { if err := recover(); err != nil { + var errInfo string switch t := err.(type) { + case biz.BizError: + errInfo = t.Error() case *biz.BizError: - d.MsgApp.CreateAndSend(rc.LoginAccount, ws.ErrMsg("sql脚本执行失败", fmt.Sprintf("[%s]%s执行失败: [%s]", filename, dbConn.Info.GetLogDesc(), t.Error()))) + errInfo = t.Error() + } + if len(errInfo) > 0 { + d.MsgApp.CreateAndSend(rc.LoginAccount, ws.ErrMsg("sql脚本执行失败", fmt.Sprintf("[%s]%s执行失败: [%s]", filename, dbConn.Info.GetLogDesc(), errInfo))) } } }() diff --git a/server/internal/db/application/db.go b/server/internal/db/application/db.go index 11ae19c4..dc24f12e 100644 --- a/server/internal/db/application/db.go +++ b/server/internal/db/application/db.go @@ -302,7 +302,7 @@ func selectDataByDb(db *sql.DB, selectSql string) ([]string, []map[string]any, e err := walkTableRecord(db, selectSql, func(record map[string]any, columns []string) { result = append(result, record) if colNames == nil { - colNames = make([]string, 0, len(columns)) + colNames = make([]string, len(columns)) copy(colNames, columns) } })