sql >> データベース >  >> NoSQL >> MongoDB

mongodbの更新操作のためのsafe=Trueパラメーターに関する質問

    try およびexcept 例外がスローされることはありません。スローされた例外を処理するだけです。

    updateの場合 失敗すると例外をスローします。except は例外を処理し、ループは続行されます( raise を使用しない限り) 例外 条項)。

    updateの場合 失敗時に例外をスローしませんが、代わりに Noneを返します (またはそのようなもの)、そしてあなたは欲しい 例外をスローするには、次を使用できます:

    if coll.update(...) is None: # or whatever it returns on failure
        raise ValueError # or your custom Exception subclass
    

    キャッチする例外を常に指定し、キャッチしたいコード行のみを tryで囲む必要があることに注意してください。 、コード内の他のエラーを非表示にしないようにします:

    for record in coll.find(<some query here>):
       #Code here
       #...
       #...
       try:
           coll.update({ '_id' : record['_id'] },record,safe=True)
       except SpecificException:
            #Handle exception here
       except OtherSpecificException:
            #Handle exception here
       else:
            #extra stuff to do if there was no exception
    

    tryを参照してください ステートメント組み込みの例外 、およびエラーと例外



    1. ノードバックエンド(MongoDB)の状態が変化したときにAngularフロントエンドに通知する

    2. mongoDBで配列/サブオブジェクトにインデックスを付けると、重複キーエラーが発生します

    3. nodejsアプリをGoogleCloudPlatformにデプロイする

    4. MongoDBバッチ挿入がJavaドライバーで機能しない