Rövid útmutató: Adatbázis lekérdezése a Node.js használatával az Azure SQL Database-ben vagy a felügyelt Azure SQL-példányban
A következőre vonatkozik: Azure SQL DatabaseFelügyelt Azure SQL-példány
Ebben a rövid útmutatóban a Node.js használatával csatlakozik egy adatbázishoz, és adatokat kérdez le.
Előfeltételek
A rövid útmutató elvégzéséhez a következőkre lesz szüksége:
Aktív előfizetéssel és adatbázissal rendelkező Azure-fiók az Azure SQL Database-ben, az Azure SQL Managed Instanceben vagy az Azure-beli virtuális gépen futó SQL Serverben. Fiók ingyenes létrehozása.
Action SQL Database SQL Managed Instance Azure-beli virtuális gépeken futtatott SQL Server Létrehozás Portal Portal Portal CLI Bicep PowerShell PowerShell PowerShell Konfigurálás Kiszolgálószintű IP-tűzfalszabály virtuális gép Csatlakozás tivitása helyszíni Csatlakozás tivitás CSATLAKOZÁS SQL Server-példányra Adatok betöltése Wide World Importers loaded per quickstart A Wide World Importers visszaállítása A Wide World Importers visszaállítása AdventureWorks visszaállítása vagy importálása BACPAC-fájlból a GitHubról AdventureWorks visszaállítása vagy importálása BACPAC-fájlból a GitHubról Node.js-hez kapcsolódó szoftver
Telepítse a Node.js-t, majd telepítse az ODBC-illesztőprogramot az SQL Serverhez készült Microsoft ODBC-illesztőprogram (macOS) telepítésének lépéseivel.
Fontos
A cikkben szereplő szkriptek az AdventureWorks-adatbázis használatára vannak megírva.
Kiszolgáló kapcsolati adatainak lekérése
Szerezze be az adatbázishoz való csatlakozáshoz szükséges kapcsolati adatokat. A következő lépésekhez szüksége lesz a teljes kiszolgálónévre vagy állomásnévre, adatbázisnévre és bejelentkezési adatokra.
Jelentkezzen be az Azure Portalra.
Nyissa meg az SQL Databases vagy a felügyelt SQL-példányok lapot.
Az Áttekintés lapon tekintse át az Azure SQL Database-beli adatbázis Kiszolgáló neve melletti teljes kiszolgálónevet, vagy a gazdagép melletti teljes kiszolgálónevet (vagy IP-címet) egy Felügyelt Azure SQL-példányhoz vagy azure-beli virtuális gépen futó SQL Serverhez. A kiszolgáló vagy a gazdagép nevének másolásához mutasson rá, és válassza a Másolás ikont.
Megjegyzés:
Az Azure-beli virtuális gépen futó SQL Server kapcsolati információi: Csatlakozás az SQL Serverhez.
A projekt létrehozása
Nyisson meg egy parancssort, és hozzon létre egy sqltest nevű mappát. Nyissa meg a létrehozott mappát, és futtassa a következő parancsot:
npm init -y
npm install mssql
Kód hozzáadása az adatbázis lekérdezéséhez
A kedvenc szövegszerkesztőjében hozzon létre egy új fájlt ( sqltest.js) abban a mappában, amelyben létrehozta a projektet (sqltest).
Cserélje le a tartalmát a következő kódra. Ezután adja hozzá a kiszolgáló, az adatbázis, a felhasználó és a jelszó megfelelő értékeit.
const sql = require('mssql'); const config = { user: 'username', // better stored in an app setting such as process.env.DB_USER password: 'password', // better stored in an app setting such as process.env.DB_PASSWORD server: 'your_server.database.windows.net', // better stored in an app setting such as process.env.DB_SERVER port: 1433, // optional, defaults to 1433, better stored in an app setting such as process.env.DB_PORT database: 'AdventureWorksLT', // better stored in an app setting such as process.env.DB_NAME authentication: { type: 'default' }, options: { encrypt: true } } /* //Use Azure VM Managed Identity to connect to the SQL database const config = { server: process.env["db_server"], port: process.env["db_port"], database: process.env["db_database"], authentication: { type: 'azure-active-directory-msi-vm' }, options: { encrypt: true } } //Use Azure App Service Managed Identity to connect to the SQL database const config = { server: process.env["db_server"], port: process.env["db_port"], database: process.env["db_database"], authentication: { type: 'azure-active-directory-msi-app-service' }, options: { encrypt: true } } */ console.log("Starting..."); connectAndQuery(); async function connectAndQuery() { try { var poolConnection = await sql.connect(config); console.log("Reading rows from the Table..."); var resultSet = await poolConnection.request().query(`SELECT TOP 20 pc.Name as CategoryName, p.name as ProductName FROM [SalesLT].[ProductCategory] pc JOIN [SalesLT].[Product] p ON pc.productcategoryid = p.productcategoryid`); console.log(`${resultSet.recordset.length} rows returned.`); // output column headers var columns = ""; for (var column in resultSet.recordset.columns) { columns += column + ", "; } console.log("%s\t", columns.substring(0, columns.length - 2)); // ouput row contents from default record set resultSet.recordset.forEach(row => { console.log("%s\t%s", row.CategoryName, row.ProductName); }); // close connection only when we're certain application is finished poolConnection.close(); } catch (err) { console.error(err.message); } }
Megjegyzés:
A felügyelt identitás hitelesítéshez való használatával kapcsolatos további információkért töltse ki az oktatóanyagot az adatok felügyelt identitáson keresztüli eléréséhez. A Microsoft Entra ID (korábbi nevén Azure Active Directory) unalmas konfigurációs beállításairól a Tedious dokumentációjában olvashat.
A kód futtatása
Futtassa a programot a parancssorban.
node sqltest.js
Ellenőrizze, hogy a rendszer visszaadta-e az első 20 sort, és zárja be az alkalmazásablakot.