В этом руководстве вы узнаете, как подключиться к SQL Server из Node.js с помощью пакета mssql.
Создать базу данных SQL Server
Прежде чем продолжить, вам необходимо следовать этому руководству, чтобы создать базу данных BookStore и настроить пользователя с правами полного доступа.
Создание проекта Node.js
Шаг 1. Откройте терминал и создайте новый каталог, например sqlserver-node, для хранения файлов проекта:
mkdir sqlserver-node
Шаг 2. Перейдите в каталог проекта:
cd sqlserver-node
Шаг 3. Инициализируйте проект Node.js:
npm init --yes
Шаг 4. Установите пакет mssql с помощью следующей команды npm:
npm install mssql
Шаг 5. Создайте файл .env, в котором хранится конфигурация SQL-сервера:
DB_USER=YourUser DB_PASSWORD=YourPassword DB_SERVER=YourServer DB_NAME=YourDatabaseName
Например:
DB_USER=joe DB_PASSWORD=YourPassword DB_SERVER=localhost DB_NAME=BookStore
Шаг 6. Измените файл package.json и добавьте type=»module» к парам ключ/значение верхнего уровня, чтобы использовать модуль ES6:
"type": "module",
Кроме того, измените раздел скриптов на следующий:
"scripts": { "start": "node --env-file=.env index.js" },
Сделав это, вы можете выполнить команду:
npm start
Node.js загрузит файл .env и запустит файл index.js.
Шаг 7. Создайте файл config.js для хранения конфигурации базы данных:
export const config = { user: process.env.DB_USER, password: process.env.DB_PASSWORD, database: process.env.DB_NAME, server: process.env.DB_SERVER, options: { encrypt: true, trustServerCertificate: true, }, };
В файле config.js мы создаем объект конфигурации, используемый для подключения к SQL Server. Объект конфигурации использует объект process.env для доступа к конфигурации базы данных, хранящейся в файле .env.
Шаг 8. Создайте файл index.js, который подключается к SQL Server:
import sql from 'mssql'; import { config } from './config.js'; const connect = async() => { try { await sql.connect(config); console.log('Connected to the database!'); } catch(err) { console.error(err); } }; connect();
Как это работает.
Сначала импортируйте объект SQL из модуля mssql и объект конфигурации из модуля config.js:
import sql from 'mssql'; import { config } from './config.js';
Во-вторых, определите функцию connect(), которая подключается к SQL Server:
const connect = async() => { try { await sql.connect(config); console.log('Connected to the database!'); } catch(err) { console.error(err); } };
Чтобы подключиться к SQL Server, вы вызываете функцию connect объекта sql и передаете объект config. Поскольку функция sql.connect() возвращает promise, мы можем использовать ключевое слово await.
Поскольку мы используем ключевое слово await внутри функции connect, мы также должны пометить функцию как асинхронную.
Если в процессе подключения возникает какая-либо ошибка, мы перехватываем исключение с помощью оператора try…catch и отображаем ошибку в блоке catch.
В-третьих, вызовите функцию connect(), чтобы установить соединение с SQL Server:
connect();
Шаг 9. Запустите команду npm start в терминале, чтобы выполнить файл index.js:
npm start
Если вы видите следующее сообщение, это означает, что вы успешно подключились к SQL Server из программы Node.js:
Connected to the database!
Загрузите исходный код проекта
Загрузите исходный код проекта
Краткое содержание
- Используйте пакет mssql для подключения к SQL Server из Node.js