我想对准备好的语句做些什么:
因为我是编写纯SQL的新手,所以我想知道必须进行哪些更改才能使其正常工作。通过以下语句,我得到了错误
pq:“ IF”处或附近的语法错误
txn, err := db.Begin()
stmt, err := db.Prepare(`IF EXISTS(SELECT * FROM something WHERE day=? AND month=?) THEN UPDATE something SET counter = counter+1 WHERE day=? AND month=? ELSE INSERT INTO something (day,month,counter) VALUES (?,?,?) END IF`)
_, err = stmt.Exec(fli.TimeLocal.Day(), fli.TimeLocal.Month(),fli.TimeLocal.Day(), fli.TimeLocal.Month(),fli.TimeLocal.Day(), fli.TimeLocal.Month(),1)
_, err = stmt.Exec()
if err != nil {
log.Fatal(err)
}
err = stmt.Close()
if err != nil {
log.Fatal(err)
}
err = txn.Commit()
if err != nil {
log.Fatal(err)
}