node.js 在mysql 里添加一条记录后,如果获取ID
时间: 2024-10-24 21:16:16 浏览: 11
在Node.js中,当你使用MySQL库(如`mysql`或`sequelize`)向数据库表中插入新记录后,通常会返回一个自动递增的主键ID作为结果的一部分。这个ID通常是通过查询的`insertId`属性获取的。
例如,如果你使用的是`mysql`模块:
```javascript
const mysql = require('mysql');
let connection = mysql.createConnection({
// 连接配置
});
connection.connect((error) => {
if (error) throw error;
const sql = 'INSERT INTO your_table (column1, column2) VALUES (?, ?)';
const values = ['value1', 'value2'];
connection.query(sql, values, (result, error) => {
if (error) throw error;
console.log('刚插入的数据的ID:', result.insertId);
connection.end();
});
});
```
或者,如果你使用的是ORM库`sequelize`:
```javascript
const Sequelize = require('sequelize');
const sequelize = new Sequelize('database', 'username', 'password', {
host: 'localhost',
dialect: 'mysql'
});
// 创建模型
const YourModel = sequelize.define('YourModel', { /* model definition */ });
async function insertData() {
try {
await YourModel.create({ column1: 'value1', column2: 'value2' });
const insertedRecord = await YourModel.lastCreateAttempt(); // 获取最近一次创建的记录
console.log('刚插入的数据的ID:', insertedRecord.id);
} catch (error) {
console.error(error);
}
}
insertData();
```
在这个例子中,`insertId`或`lastCreateAttempt().id`将返回新插入行的自增ID。记得处理可能出现的错误。
阅读全文