前提・実現したいこと
GOでgRPCの勉強をしています。
MySQLを使用しており、その中の一つの値をJSON形式にしたいと考えております。
直接SQL分を実行すると、正常にテーブルに追加することができるのですが、
GOのソースからinsertのSQLを実装する形ですと正解の記述方が分からず、エラーが消えません。
適切なINSERTする際の記述を教えていただきたいです。
発生している問題・エラーメッセージ
いろいろな記述方を試してはいるのですがエラーが消えません。
実行したいSQL
insert into users values(2534, "taro", json_object("Seconde", 234, "Nanos", 5353));
このSQLをコマンドプロンプトから直接MySQLに実行したら追加することができました。
該当のソースコード
// LastUpdatedAtにはSeconds、Nanosと二つの値があるためJSON形式でテーブルに格納がしたいです。
lastUpdatedAt := timestamppb.Now()
ins, err := db.Prepare("insert into users(ID, lastname, lastUpdatedAt values(?, ?, ?)")
if err != nil {
panic(err.Error())
}
defer ins.Close()
if _, err := ins.Exec(id, inLastName, json_object("Seconde", lastUpdatedAt.Seconds, "Nanos", lastUpdatedAt.Nanos)); err != nil {
panic(err.Error())
}
試したこと
何が正解か分からず、とりあえずいろいろな記述方を試してみてはいるのですがうまくいきませんでした。
// ins, err := db.Prepare("insert into users(ID, lastname, firstname, email, password, lastUpdatedAt) values(?, ?, ?, ?, ?, ?)")
// ins, err := db.Prepare("insert into users(ID, lastname, firstname, email, password, JSON_OBJECT(lastUpdatedAt.seconds, lastUpdatedAt.nanos) values(?, ?, ?, ?, ?, ?, ?)")
補足情報(FW/ツールのバージョンなど)
うまく質問を伝えることができたか自信がありません。
不足情報などありましたら、お手数ですが教えていただけますと幸いです。
mysql Ver 14.14 Distrib 5.7.34, for Win64 (x86_64)
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。