2016-12-28 9 views
-2

私は既存のストアドプロシージャを持っており、それをJavaプログラム内で実行したいと考えています。同じプログラムでストアドプロシージャを作成せずにこれを行う方法を示す例はありますか?あなたが最初createStoredProcedure APIを使用してDocumentDBデータベース内に作成する必要がストアドプロシージャを実行するためにJavaで既存のDocumentDBストアドプロシージャを実行する

function Get_last_sync_time(name, phone_no) { 
    .... 
} 
+0

あなたが何を求めているのかよく分かりません。 DocumentDBのストアドプロシージャは、格納している他のデータと同様、*耐久性があります*。彼らは実行中のプログラムにスコープされていません。もっと具体的にあなたの質問を編集するかもしれませんか?今は本当にあまり意味がありません。 –

答えて

1

私のストアドプロシージャは、2つの入力パラメータがあります。私は、 "既存の"ストアドプロシージャによって、既にDocumentDB内にあるかどうかを確認できません。そうであれば、executeStoredProcedure APIを使用して実行することができます。

ここでは、DocumentDBでストアドプロシージャを作成して実行するためのexampleがあります。

問題が解決するかどうか教えてください。

0

あなたが参照を持っていたら、

StoredProcedureResponse res = docDbClient.executeStoredProcedure(sProc.getSelfLink(), options, new Object[]{params}); 

ストアドプロシージャを呼び出すオプションオブジェクトがタイプRequestOptionsであり、使用することができます

StoredProcedure sProc = docDbClient.queryStoredProcedures(docDBCollection.getSelfLink(), new SqlQuerySpec("SELECT * FROM root r where r.id='" + "Get_last_sync_time" + "'"), null).getQueryIterable().toList().get(0); 

を使用して、既存のストアドプロシージャへの参照を取得することができますパーティション化されたDocumentDBを使用している場合は、パーティションキーのようなプロパティを設定します。

関連する問題