const express = require('express'); const app = express(); const sql = require('mssql'); // SQL Server 数据库配置 const config = { server: '192.168.10.223', user: 'sa', password: 'Servo01', database: 'demo', options: { encrypt: true // 如果需要 SSL 连接,设置为 true } }; app.post('/register', function(req, res) { const {name, email, password } = req.body; // 连接 SQL Server 数据库 sql.connect(config, function(err) { if (err) { console.log(err); res.status(500).send('数据库连接失败'); return; } // 执行插入操作 const query = `INSERT INTO username (userId, name, email, password) VALUES ('${userId}','${name}', '${email}', '${password}')`; new sql.Request().query(query, function(err, result) { if (err) { console.log(err); res.status(500).send('注册失败'); return; } res.send('注册成功'); }); }); }); app.listen(port, function() { console.log(`Server running on port ${port}`); });
时间: 2024-04-15 15:26:37 浏览: 23
这段代码是一个基于Express框架的Node.js应用程序,用于注册用户到SQL Server数据库。它使用了`express`和`mssql`这两个模块来实现功能。
首先,通过`const express = require('express')`引入`express`模块,并创建一个应用程序实例`app`。
接下来,通过`const sql = require('mssql')`引入`mssql`模块,用于连接SQL Server数据库。
然后,定义了一个名为`config`的对象,包含了数据库的连接信息,包括服务器地址、用户名、密码、数据库名称等配置。
在`app.post('/register', function(req, res) { ... })`中定义了一个POST请求的路由处理函数,用于处理用户的注册请求。在请求体中获取到用户的姓名、邮箱和密码。
接着,在路由处理函数中调用`sql.connect(config, function(err) { ... })`来连接SQL Server数据库。如果连接失败,则返回错误信息。
如果连接成功,则执行插入操作。插入操作是通过使用SQL语句拼接的方式来构建的,将用户的姓名、邮箱和密码插入到名为`username`的表中。
最后,在插入操作完成后,通过调用`res.send('注册成功')`来发送响应,并在控制台上打印服务器运行的端口号。
请注意,这段代码中的一些变量(例如`userId`和`port`)并未在代码中定义或赋值,你需要根据实际需求进行修改。此外,使用SQL语句拼接的方式存在SQL注入的风险,建议使用参数化查询来防止注入攻击。