ホームページ  >  記事  >  バックエンド開発  >  json 範囲を pgtype.Int4range に読み取れません

json 範囲を pgtype.Int4range に読み取れません

WBOY
WBOY転載
2024-02-10 09:00:09378ブラウズ

无法将 json 范围读取为 pgtype.Int4range

php エディタ Baicao は、PHP および PostgreSQL データベースを使用するときに、「json 範囲を pgtype.Int4range として読み取れません」というエラー メッセージが表示される場合があります。このエラーは通常、JSON データ型を pgtype.Int4range データ型に変換しようとしたときに発生します。この問題の解決策は複雑ではなく、JSON データを文字列に変換してからデータ型変換を実行するだけです。次に、この問題を解決する方法を詳しく説明します。

質問内容

jsonに範囲を読み込もうとしているのですが、json.unmarshalができず困っています。

これはテストコードです-

リーリー ###間違い-### リーリー

pgtype.int4rangeとして読み込むことは可能でしょうか?このタイプはデータベース専用だと思いますか? fwiw、私は pgx github.com/jackc/pgx/v4

回避策

を使用していますが、

"[20,30)"

が機能しないため機能しません。構造体 pgtype.int4range の有効な json 値、および pgtype.int4rangejson.unmarshaler インターフェイスをまだ実装していません。 自分自身をアンマーシャリングするにはインターフェイスを実装する必要があります

"[20,30)"

: リーリー ###ところで### リーリー 2 つの異なるタイプを比較しているため、次のように修正する必要があります:

リーリー

ここで完全なデモをご覧ください:

https://www.php.cn/link/fbf6e9ffad68f73e466198206987dedc

.

以上がjson 範囲を pgtype.Int4range に読み取れませんの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はstackoverflow.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。