任何人都可以请建议:
我有一个在 azure 上运行的现有 Nodejs 服务器,在 Linux 上运行节点 10.14。项目代码位于 github 上,当我推送更改时,它们会自动推送到 azure。
我已经通过Azure门户设置了数据库服务器和数据库,并且可以通过Azure门户查询它。
我想修改节点js服务器以连接到数据库,我有连接字符串代码等,但只需添加以下行:
var mysql = require('mysql');
将停止服务器表单的运行,因为大概我还没有在 Azure 云中运行服务器的计算机上安装 mysql。
我怎样才能让它发挥作用?
谢谢你的帮助,
米奇.
根据错误提示,您没有将包添加到您的package.json
文件并将该包安装到您的项目中。此外,如果你想连接Azure SQL Server数据库,我们可以使用包mssqql https://www.npmjs.com/package/mssql
例如
- My
package.json
file
{
....
"dependencies": {
"express": "^4.17.1",
"mssql": "^6.2.0",
"request": "^2.88.2"
}
}
- code
const router = express.Router()
const sql = require('mssql')
const config = {
user: "<user name>",
password: "<password>",
server: "<your SQL server name>.database.windows.net",
port: 1433,
database: "test",
connectionTimeout: 3000,
parseJSON: true,
options: {
encrypt: true,
enableArithAbort: true
},
pool: {
min: 0,
idleTimeoutMillis: 3000
}
};
const pool = new sql.ConnectionPool(config);
const poolConnect = pool.connect();
router.get('/', async function (req, res) {
await poolConnect;
try {
const request = pool.request();
const result = await request.query('select 1 as number')
console.log(result);
res.json(result.recordset);
} catch (err) {
console.error('SQL error', err);
res.send(err);
}
});
- Test.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)