基本原生操作
SQL语句对于前端来说,看这个就足够了:
安装 mysql 模块
在 node 项目中安装 mysql 模块:npm install mysql —save
mysql 模块基本使用
引入 mysql 模块
const mysql = require('mysql');
链接数据库
// 连接配置
const config = {
host: "localhost",
user: "root",
passward: "admin", // 修改为你的密码
database: "mydatabase", // 请确保数据库存在
}
// 创建连接对象
const conn = mysql.createConnection(config);
// 连接数据库
conn.connect(err => {
if (err) {
throw err;
} else {
console.log("连接成功!")
}
})
创建表
// 创建表
const CREATE_SQL = `CREATE TABLE IF NOT EXISTS test (
id INT NOT NULL AUTO_INCREMENT,
message VARCHAR(45) NULL,
PRIMARY KEY (id))`;
const INSERT_SQL = `INSERT INTO test(message) VALUES(?)`;
const SELECT_SQL = `SELECT * FROM test`;
conn.query(CREATE_SQL, err => {
if (err) {
throw err;
}
// 插入数据
conn.query(INSERT_SQL, "hello,world", (err, result) => {
if (err) {
throw err;
}
console.log(result);
conn.query(SELECT_SQL, (err, results) => {
console.log(JSON.stringify(results));
conn.end(); // 若query语句有嵌套,则end需在此执行
})
});
});
mysql ES7写法
安装 mysql2: npm install mysql2 —save
连接数据库
(async () => {
// 引入 mysql
const mysql = require('mysql2/promise')
// 连接配置
const config = {
host: "localhost",
user: "root",
password: "admin", // 修改为你的密码
database: "test" // 请确保数据库存在
}
// 连接数据库
const connection = await mysql.createConnection(config)
})()
新建表
// sql语句
const CREATE_SQL = `CREATE TABLE IF NOT EXISTS test (
id INT NOT NULL AUTO_INCREMENT,
message VARCHAR(45) NULL,
PRIMARY KEY (id))`;
// 新建表
let ret = await connection.execute(CREATE_SQL);
console.log('create',ret)
插入一条数据
const INSERT_SQL = `INSERT INTO test(message) VALUES(?)`;
const ret = await connection.execute(INSERT_SQL,['hello']);
console.log('insert',ret);
查询数据
const SELECT_SQL = `SELECT * FROM test`;
const [rows,fileds] = await connection.execute(SELECT_SQL);
console.log('select',rows);
修改数据
const UPDATE_SQL=`UPDATE test SET message='hi' WHERE id=1`
await connection.execute(UPDATE_SQL)
上面的语句把 id 为 1 的 message 改为了 hi
删除数据
const DEL_SQL=`DELETE FROM test WHERE message='hello'`;
await connection.execute(DEL_SQL);
上面的语句把所有的 hello 都删除了