私は遊んでいますAmazon Aurora Serverless の新しいデータ API
応答でテーブル列名を取得することは可能ですか?
例えば、次のクエリをユーザーid
、、、、first_name
の列をlast_name
持つ表email
:phone
const sqlStatement = `
SELECT *
FROM user
WHERE id = :id
`;
const params = {
secretArn: <mySecretArn>,
resourceArn: <myResourceArn>,
database: <myDatabase>,
sql: sqlStatement,
parameters: [
{
name: "id",
value: {
"stringValue": 1
}
}
]
};
let res = await this.RDS.executeStatement(params)
console.log(res);
次のような応答が返されるので、各値に対応する列を推測する必要があります。
{
"numberOfRecordsUpdated": 0,
"records": [
[
{
"longValue": 1
},
{
"stringValue": "Nicolas"
},
{
"stringValue": "Perez"
},
{
"stringValue": "[email protected]"
},
{
"isNull": true
}
]
]
}
次のような回答を希望します:
{
id: 1,
first_name: "Nicolas",
last_name: "Perez",
email: "[email protected]",
phone: null
}
アップデート1
私は見つけたnpmモジュールAurora Serverless Data APIをラップし、開発を簡素化します
ベストアンサー1
応答サイズを削減しようとしており、各レコードに列情報を含めるのは冗長であったため、現在のアプローチを採用することにしました。
結果に列メタデータを含めることを明示的に選択できます。パラメータ「includeResultMetadata」を参照してください。