簡體   English   中英

如何訪問AWS Lambda中的SQL數據庫?

[英]How to access SQL database in AWS Lambda?

如何使用Node.js與Lambda function中的SQL數據庫建立連接? 我想在 SQL 數據庫中獲取和發布數據。

謝謝

在 lambda 中運行 nodejs 代碼與在任何其他服務器或本地機器上運行相同的代碼相同。 您將獲得相同的 nodejs 運行時。 對於 lambda,可能存在一些限制,例如包大小,但代碼的執行方式沒有區別。

下面的鏈接顯示,如何從 nodejs https://www.w3schools.com/nodejs/nodejs_mysql_select.asp連接到 mysql

如果您特別期待 lambda 中的 mysql,這篇文章可能是一個好的開始。 https://blog.risingstack.com/getting-started-with-aws-lambda-and-node-js/

或者,如果您想將 mssql 與 lambda 一起使用,請查看這個 SO 問題。 AWS Lambda 和 SQL Server 集成

我正在發布一個與 SQL 數據庫一起使用的完整 lambda 函數。

const sql = require('mssql');

    const config = {
                     user: "username",
                     password: "password",
                     server: "server",
                     database: "database name",
                     options: {
                                   //In case of azure database
                                    encrypt: true
                               }
                   }

exports.handler = async event => 
{
  if(event.httpMethod ==='GET')
  {
    return await getRecord(event);  
  }
};

const getRecord = async event => 
{
   try 
   {
     // Open DB Connection
     let pool = await sql.connect(config)

     // Query Database
     let result = await pool.request().query('select * from tablename')

     // Close DB Connection
     pool.close();

     // The results of our query
     console.log("Results:", result);

     return 
     {
        statusCode:200,
        body:result
     }

   } 
   catch (err) 
   {
    // Error running our SQL Query
    console.error("ERROR: Exception thrown running SQL", err);
   }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM