(A)のDynamoDBの基本的な操作

まず、テーブルを作成します 

1つのVAR AWS =必要とする( "AWS-SDK" );
  2 AWS.config.update({
  3リージョン: "US-2ウエスト"、                           // 使用される領域のAWSサービス 
 4エンドポイント:「HTTP:// localhostを : 8000 " // DynamoDBの位置 
 5。});
  6。VARの DynamoDBの= 新しい新しいAWS.DynamoDB();
  7。
 8。VARのparams = {
  9テーブル名:"映画" // テーブル 
10 KeySchema:        // 主キー 
11 {AttributeNameに:"年"ます。KeyType:" HASH「}、   // パーティション・キー・パーティション化キー
12 {AttributeNameに"タイトル"、ます。KeyType: "RANGE"}   // ソートキー排序键 
13      ]、
 14 AttributeDefinitions:// 主键数据类型     
15 {AttributeNameに"年"、AttributeTypeで: "N"}、// N数 
16 {AttributeNameに"タイトル"、AttributeTypeで: "S"}    // Sストリング 
17      ]、
 18 ProvisionedThroughput:{ // DynamoDBの吞吐量配置 
19 ReadCapacityUnits:10  20 WriteCapacityUnits:10 
21      }
 22 }。
23 dynamodb.createTable(paramsは、関数(ERR、
もし(ERR){
 25 console.error( "テーブルを作成できませんJSONのエラー:"、JSON.stringify(ERR、NULL、2 ))。
26} {
 27はconsole.log( "作成されたテーブル表の説明JSON:"、JSON.stringify(データ、NULL、2 ))。
28      }
 29});

第二に、エントリの増加 

。1つの VAR docClient = 新新AWS.DynamoDB.DocumentClient();
 2  VaRの表= "作品" ;
 3。 のvar年= 2015 ;
 4。 VaRの "新ビッグ映画の"タイトル= ;
 5。 VARのparams = {
 6。      テーブル名:テーブル、// 動作させるためのテーブル
7。     アイテム:{
 8。          "年":年、// プライマリキー-パーティション間
9。          "タイトル":タイトル、// プライマリキー-ソートキー
10          "情報":{      // その他のプロパティ
11             "プロット": "何が全く起こらない。"、 "評価":0
 12          }
 13      }
 14  }。
15はconsole.log( "新しいアイテムを追加しています..." );
16 docClient.put(paramsは、関数(ERR、データ){
 17      であれば(ERR){
 18          console.error( "アイテムを追加できませんJSONをエラー:"、JSON.stringify(ERR、NULL、2 ));
 19      } {
 20          はconsole.log( "項目を追加しました:"、JSON.stringify(データ、NULL、2 ));
 21      }
 22 });

 第三に、アクセスエントリー 

。1つの VAR docClient = 新新AWS.DynamoDB.DocumentClient()
 2  VaRの表= "作品"; // テーブルが満たさなければならない
3。 のvar年= 2015;   // 照会するパーティションキー
4。 VaRの "新ビッグ映画の"タイトル=; // テーブルは、複合主キーを作成する場合に照会するソート・キーが提供され、その後、パーティションキーソートキーが存在しなければならない
5。 VARのparams = {テーブル名:テーブル、キー:{「年」:年、「タイトル」:タイトル}}。
 6 docClient.get(paramsは、関数(ERR、データ){
 7      IF (ERR){
 8          console.error( "読み取ることができませんJSON項目をエラー:."、JSON.stringify(ERR、ヌル、2));
9      } {
 10          はconsole.log( "GetItem関数が成功した:"、JSON.stringify(データ、NULL、2 ))。
11      }
 12 });

 第四に、更新された項目 

。1つの VARの表は、= "作品" ;
 2  のvar年= 2015 ;
 3。 VaRの "新ビッグ映画の"タイトル=; // 更新項目、UNCONDITIONALLY、
4。 VARのparams = {
 5。     テーブル名:テーブル、キー:{
 。6          "年" :年、// パーティションキー
7。          "タイトル":タイトル// ソートキーインタフェースは主キーを更新しなければならない
。8      }、UpdateExpression: "SET = info.rating:R&LT = info.plot:P = info.actors:A" 、// 式の値に変更したい
9      ExpressionAttributeValues:{       // あなたは割り当てを変更したい値を
10         ":R":5.5、 ":P": "すべてが一度にすべてを発生します。"、 ":":[ "ラリー"、 "萌え"、 "カーリー" ]
 11      }、ReturnValues: "UPDATED_NEW" // 返回更新值、即下中のデータ
12  }。
13はconsole.log( "アイテムを更新しています..." )。
14 docClient.update(paramsは、関数(ERR、データ){
 15      にconsole.log(データ);
 16      場合(ERR){
 17          console.error( "更新項目にできないが、JSONエラー:"、JSON.stringify(ERRをNULL、2 ));
 18      } {
 19         console.log( "UpdateItemは成功しました:"、JSON.stringify(データ、ヌル、2 ));
20      }
 21 });

第五に、削除項目 

。1つの VARの表= "作品" ;
 2  のvar年= 2015 ;
 3。 VaRの "新ビッグ映画の"タイトル= ;
 4。 VARのparams = {
 5。      テーブル名:表、// 待機テーブル削除操作
。6      キー:{
 7          "年" :年、// パーティションキー
8。          "タイトル":タイトル// ソート・キー
。9      }、
 10      ExpressionAttributeNames:{ "U#": "ユーザー" }、
 。11      conditionExpression: "= #U:ヴァル"、// 削除条件式式
12     ExpressionAttributeValues:{
 13          ":ヴァル":5.0    // 条件值
14      }
 15  }。
16はconsole.log( "条件付きの削除をしようと..." );
17 docClient。削除(paramsは、関数(ERR、データ){
 18      であれば(ERR){
 19          console.error( "削除項目にできないJSONをエラー:"、JSON.stringify(ERR、NULL、2 ));
 20      } {
 21          console.log( "DeleteItemが成功:"、JSON.stringify(データ、NULL、2 ));
 22     }
 23 });

 第六に、バッチクエリ 

1つの VARの paramsは= {
 2  RequestItems:{
 3    "GsdSubDevices" :{
 4     キー:[
 5      {
 6       "MAC": "母"
 7      }、
 8      {
 9       "MAC": "111"
 10      }
 11      {
 12       「マック「: "222"
 13      }
 14     ]
 15    }
 16  }
 17  }。
18はconsole.log( "requestArr ===>" + JSON.stringify(requestArr))。
19 docClient。関数(ERR、データ){
 20   であれば(ERR){
 21    console.error( "アイテムを読み取ることができませんJSONをエラー:"、JSON.stringify(ERR、NULL、2 ))。
22   } {
 23   
24  }
 25 });

 

 より多くの推奨動作データベース操作よりも使用する場合は、次の2つの方法で操作DynamoDBのデータベースは、DynamoBDにもう一つの一般的な操作(B)を参照してください、このアプローチは、よりお勧めできません、複雑になっています

おすすめ

転載: www.cnblogs.com/yayaonly/p/12114396.html