我有 node.js 应用程序我已经安装了 dotenv 并在我的 .env 文件中添加了以下配置
DB_HOST='localhost'
DB_Database=TheDatabasename
DB_USER=TheUser
DB_PASS=thePassword
DB_PORT=1433
Run Code Online (Sandbox Code Playgroud)
我正在使用 sqlserver,我称之为 dotenv,如下所示:
const sql = require('mssql');
const dotenv = require('dotenv');
dotenv.config();
const config = {
user: process.env.DB_USER,
password: process.env.DB_PASS,
server: process.env.DB_HOST,
database: process.env.DB_Database,
port: process.env.DB_PORT,
}
const poolPromise = new sql.ConnectionPool(config)
.connect()
.then(pool => {
console.log('Connected to MSSQL')
return pool
})
.catch(err => console.log('Database Connection Failed! Bad Config: ', err))
module.exports = {
sql, poolPromise
}
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:
Database Connection Failed! Bad Config: TypeError: The "config.options.port" property must be of type number.
Run Code Online (Sandbox Code Playgroud)
Mssql,需要在port参数中输入类型号,环境变量为字符串。
您应该在发送给驱动程序之前转换该值
...
port: parseInt(process.env.DB_PORT, 10),
...
Run Code Online (Sandbox Code Playgroud)