私は、という表テーブルPEOPLE
を持っていて、Person
の行を格納しているとします。しかし、Person
は、構造体のスライス、構造体とスライス、即ち超大国、車両とFriendListそれぞれフィールドを含んでいます。PostgreSQLの構造体のGolangスライス、構造体、スライスの保存と取り出し
これらの値をどのように保存して取得する必要がありますかPostgresqlゴラン?私はこの問題に関連する実用的なチュートリアルを見つけることができません。カスタムデータ型、JSON、ORMメソッドを使用するか、カスタム関数をビルドしてこれに対処しますか?そこに多くの意見が、私はまだこの問題を解決するための作業方法を理解することはできません、助けてください。
私はOzzo-dbxを使用していますが、どのような解決策も歓迎します。
誰かが実際の例を提供できますか?申し訳ありませんが、この初心者の質問があなたを刺激するが、私はすでに数日間試みたが、(T_T)...失敗し、多くの場合
type Transport struct {
Brand string
Size int
}
type Friend struct {
Name string
IsProgrammer bool
}
type Person struct {
ID int
Name string
Superpower []string //slice
Vehicle Transport //struct
FriendList []Friend //slice of struct
}
JSON形式で 'slice'、' struct'、 'slice'構造体の値を保存することができます(' ID'は 'int'、' Name'は 'string'など) 。それは論理的です:) –
_SuperPower_、_Vehicle_、_FriendList_プロパティはどのようにデータベースに格納されていますか?その決定をコントロールしているのですか、それとも関連するテーブルがありますか?それがあなた次第なら、多くの選択肢があります。 – maerics
Golangのデータ型と同じように、これらのフィールド(* SuperPower *、* Vehicle *、* FriendList *)を格納したいとします。これは**最も簡単な**です。うまくいけば、これらのフィールドはJSONエンコーディングなしで保存することができます。それは**最も高速な**です。関連テーブルを持たずに関連付けをして保存することができれば、** elagant **となります。可能であれば、「SELECT Person.Vehicle.Brand ...」のような*ドット表記*を使用してデータベースにアクセスしたいと考えていますが、これは美しく実装されているかもしれません** ...可能でしょうか? :) –