From aa34353a9e42ff17498f1dbb99be487c9938ff88 Mon Sep 17 00:00:00 2001 From: shoopea Date: Sat, 18 Apr 2020 21:09:26 +0800 Subject: [PATCH] fix obj name --- obj.go | 22 +++++++++++++++++++--- 1 file changed, 19 insertions(+), 3 deletions(-) diff --git a/obj.go b/obj.go index bd985cb..cfea80d 100644 --- a/obj.go +++ b/obj.go @@ -265,12 +265,28 @@ func setObjSubTypeId(objId int64, objSubTypeID64 int64) error { } func objAddName(objID64 int64, name string) error { - stmt, err := db.Prepare(`INSERT INTO obj_name (obj_id, name, priority) - SELECT ? obj_id, ? name, (SELECT count(*) FROM obj_name WHERE obj_id = ?) priority FROM DUAL;`) + var priority int64 - _, err = stmt.Exec(objID64, name, objID64) + stmt, err := db.Prepare(`SELECT COUNT(*) FROM obj_name on WHERE on.obj_id = ?`) + if err != nil { + return err + } defer stmt.Close() + err = stmt.QueryRow(objID64).Scan(&priority) + if err != nil { + return err + } + + stmt2, err := db.Prepare(`INSERT INTO obj_name (obj_id, name, priority) + VALUES (?, ?, ?);`) + if err != nil { + return err + } + defer stmt2.Close() + + _, err = stmt2.Exec(objID64, name, priority) + return err }