私は登録システムを書いています。そして、デバイスの能力によって、ユーザIDのために16バイトを持つという要件があります。また、私は、mongoが挿入されたオブジェクトごとにObjectIDを作成することを知っています。少なくとも、コレクション内では一意です。このIDは12バイトです。私は疑問に思っていた - それは16バイトのIDを生成するようにmongoのどこかの設定を変更することは可能ですか?私は、4バイトのゼロバイトで12バイトのIDをパディングすることを考えました。それは解決策ですが、それは無理です。より良い方法がありますか?mongodb IDの方針を変更してください。
0
A
答えて
1
ObjectIDの形式を変更するためのサーバー側の設定はありませんが、アプリケーション内に自分自身が望むものを何でも提供することができます。インサートの場合、ドライバーはインサート時にローカルでは_id
をローカルで作成します。サーバーはupsert
操作のためにのみサーバーを生成します。
upsert
に依存しない限り、自分で_id
個のフィールドを生成することをお勧めします。 16バイトの場合は、たとえば、UUIDジェネレータを使用できます。
+0
に置き換えるコンソール用の.mongorcを作成することもできます。どのように '_id'をモンゴー? '_ *'フィールドは内部のmongodbの使用のためだけに予約されていると思いました。または、フィールド '_id'を指定して標準挿入プロシージャを実行する必要がありますか? –
+0
他のフィールドと同様に_idを追加できます。 – xdg
関連する問題
- 1. MongodbのdbPathを変更してください
- 2. 特定のホストのssh IDを変更してください
- 3. MongoDBの配列のObject-Elementを更新してください
- 4. ユーザエージェントを変更してください
- 5. ラスタエクステントを変更してください
- 6. org.eclipse.jdt.core.dom.ASTPArserを変更してください
- 7. ServiceStack:DefaultNoProfileImgUrlを変更してください
- 8. SystemParametersを変更してください
- 9. ステータスコードを変更してください。
- 10. mongoシェルでmongodbの文書構造を変更してください
- 11. キーワード "id"を検索し、その値をインラインスタイルで変更してください
- 12. mongoDbをリクエストしてください。
- 13. GUI、ウィジェット、UI:針ゲージの作成方法を教えてください。
- 14. CKeditorの方向を動的に変更してください
- 15. シュレディンガー方程式のスケーリングを変更してください
- 16. CSSトランジションの方向を変更してください
- 17. MongoDB文字をRに変換してください。
- 18. PySparkデータフレーム - ObjectIdにタイプを変更してください
- 19. <body>を<body id "something"に変更してください。runat = "server">
- 20. 商品IDがXならば、商品名を変更してください
- 21. NHibernateを変更しないWebドロップダウンリストのIlistを変更してください
- 22. セシウムイメージャのレベルをより速く変更してください。
- 23. ループ内の変数名を変更してください
- 24. 変数をtkinterのボタンで変更してください
- 25. MainActivityの変数をBaseActivityから変更してください
- 26. SESSION変数の値を変更してください
- 27. gtk_render_lineの線の太さを変更してください
- 28. TextViewの色を変更してから変更してください。
- 29. ラジオボタンを変更し、クリックしてスタイルを変更してください。
- 30. EditTextの変更方法を教えてください。
まず、これらのIDを挿入するようにアプリケーションを変更することができますが、objectIdヘルパーを自分の – Sammaye