前言
在使用 AWS DynamoDB 数据库的时候,需要借助一些工具来方便地进行开发,包括连接 DynamoDB,创建表格,执行查询等等。其中,npm 包 aws-dynamo-helper 就是一个非常有用的工具。
aws-dynamo-helper 是一款 Node.js 的库,它提供了便捷的操作 DynamoDB 的 API 函数,可以帮助前端开发者快速地与 DynamoDB 数据库进行交互,并且使开发更加高效和简单。
本篇文章主要介绍如何使用 aws-dynamo-helper 包来连接并操作 DynamoDB 数据库,涉及表格的创建、数据的新增、查询和删除等内容,并提供相关代码示例。
安装 aws-dynamo-helper
在使用 aws-dynamo-helper 之前,需要先在项目中安装它。可以通过 npm 命令来完成安装,如下:
npm install aws-dynamo-helper
安装完成后,就可以在项目中引入 aws-dynamo-helper 包来调用相应的 API 函数。
连接 DynamoDB
在开始操作 DynamoDB 数据库之前,需要先建立连接。aws-dynamo-helper 提供了 connect() 函数来连接 DynamoDB 数据库。
-- -------------------- ---- ------- ----- --- - ------------------- ----- - ------- - - ----------------------------- ------------------- ------- ------------ ------------ ----------------------- ---------------- ------------------------------------------- --- ------------------- -------------
其中,AWS.config 需要引入 AWS SDK,传入 accessKeyId 和 secretAccessKey 用于授权,region 用于指定连接对应的 AWS 区域。
connect() 函数中第一个参数为表格名,第二个参数为 accessToken,accessToken 用于访问授权,如果不需要用到请留空。
创建表格
使用 aws-dynamo-helper 包可以便捷地创建 DynamoDB 中的表格。在创建表格之前,需要先定义表的结构,在这里我们以用户表为例:
-- -------------------- ---- ------- ----- ------ - - ------ - ----------- -------- -------------------- -- --------------------- -- ------------ - -------------- ---------- ------------------- ---- -- ------------------------- - - ----------- -------------- -------------- -------- ------------------- ---- ---------------- ------ -- -- -- --
在 schema 里,我们定义了 table 的属性,包括 table_name 表名、read_capacity_units 和 write_capacity_units 的吞吐量、primary_key,即主键(partition_key)、global_secondary_indexes 也就是非主键索引等等。
每个属性的意义如下:
- table_name:表名(必填)
- read_capacity_units:表的读取吞吐量(非必填,默认为 5)
- write_capacity_units:表的写入吞吐量(非必填,默认为 5)
- primary_key:主键(必填),含有 partition_key 和 partition_key_type 两个属性,分别为主键名和类型
- global_secondary_indexes:全局辅助索引(非必填),含有 index_name、partition_key、partition_key_type、projection_type 四个属性。
创建表格的代码如下:
createTable(schema.table);
插入数据
aws-dynamo-helper 提供了 putItem() 函数来方便地插入数据到 DynamoDB。
const userData = { user_id: 'user01', name: 'Jack', email: 'jack@example.com', }; putItem('users', userData);
其中,第一个参数为表格名,第二个参数是需要插入的用户数据。
查询数据
aws-dynamo-helper 提供了 query() 函数来方便地查询 DynamoDB 中的数据。
-- -------------------- ---- ------- ----- --------- - - ---------- -------- ---------- -------- ----------------------- ------ - -------- -------------------------- - --------- ------------------- -- -- -----------------
其中,condition 是查询条件,包含 queryType(固定值 query)、表名 tableName、keyConditionExpression 表示查询条件(可包含占位符),expressionAttributeValues 表示占位符的替代值。
更新数据
使用 aws-dynamo-helper 包可以方便地更新 DynamoDB 中的数据。以下代码示例演示了如何将用户 Jack 的 email 改为 john@example.com。
const userData = { user_id: 'user01', name: 'Jack', email: 'john@example.com', }; updateItem('users', userData);
其中,第一个参数为表格名,第二个参数为需要更新的数据,可指定新值或部分更新。
删除数据
使用 deleteItem() 函数可以方便地删除 DynamoDB 中的数据。
const userId = 'user01'; deleteItem('users', userId);
其中,第一个参数为表格名,第二个参数为需要删除的数据。
总结
aws-dynamo-helper 是一款非常实用的 npm 包,它提供了许多方便、高效的 API 函数,可以使开发者更加便捷地操作 DynamoDB 数据库。在本文中,我们主要介绍了连接数据库、创建表格、插入数据、查询数据、更新数据和删除数据方面的操作,并提供了相应的代码示例。希望本文对前端开发者在使用 aws-dynamo-helper 的过程中有所帮助。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/600562b781e8991b448dff53