を使用してpostgres 9.3
、go 1.6
ライブラリでトランザクションを使用しようとしていgo
pq
ます。
// Good
txn, _ := db.Begin()
txn.Query("UPDATE t_name SET a = 1")
err := txn.Commit() // err is nil
// Bad
txn, _ := db.Begin()
txn.Query("UPDATE t_name SET a = $1", 1)
err := txn.Commit() // Gives me a "unexpected command tag Q" error
// although the data is committed
何らかの理由で、Query
パラメーターを指定して a を実行すると、常にunexpected command tag Q
からエラーが発生しますCommit()
。このエラーは何ですか (Q とは何ですか?)、なぜこのエラーが発生するのですか?
これがエラーが作成される場所だと思います。