考虑用 Python 编写的 AWS lambda,它使用 boto3 作为 AWS Redshift 服务的客户端。
考虑以下示例:
import boto3
import moto
def lambda_handler(event, context):
session = boto3.session.Session()
redshift_data_service = session.client(
service_name='redshift-data',
region_name='a_region',
)
redshift_data_service.execute_statement(
sql="insert into XYZ VALUES..."
)
@moto.redshiftdata
def test_insert_sql_insert():
lambda_handler(...)
redshift_data_service = boto3.client("redshift-data", region_name='a_region')
# List of executed statements (id... sql...)
# Assert Statement Descriptions
使用Moto python依赖模拟
redshift-data
(类似于上面的例子),我如何检索有关执行语句的数据?我指的是先前执行的语句 ID 和在 lambda_handler
上调用的 sql 字符串(“INSERT...”)
我找不到任何东西来获取语句 ID 以查询服务并获得语句描述。
有没有办法断言先前执行的 SQL 的文本?