次のようなドキュメントを含むCouch dbにデータベースがあります。
{"foo":["bar1":"baz","bar2":18,"bar3":23.2]}
新しいドキュメントを挿入する前に、各値のバッチ チェックを行う方法はありますか?
私が達成したいのは、データベース内の任意のドキュメントにキーと値のペア foo.bar1 = baz と foo.bar2=1 が存在し、baz が挿入する新しい値と等しい場合、バッチ関数は新しい値を挿入しないことです。資料。
より具体的には、foo.bar は日時であり、その日時が存在し、同じドキュメント内の別の値が特定の値である場合、更新は実行されません。
最初に値のリクエストを行い、次にクライアントに決定させることで、挿入の単一リクエストを行うことでこれを解決できました。しかし、クライアントとソファデータベースの間ですべてのデータがやり取りされるため、非常に時間がかかります。また、この種のチェックを行うときは、データベースの整合性に依存することを好みます。それとも、問題を解決するSQLの方法ですか?