终于有一天,自己开始主动写demo和总结。
来看看怎么用强大的Nodejs来操作数据库吧。
安装mysql的过程就不说啦,直接看我的数据库结构吧
1.连接数据库
//connect.js
const mysql = require("mysql");
const connection = mysql.createConnection({
host: "localhost", //主机地址
user: "root", //数据库用户名
password: "123456", //数据库用户密码
database: "test" //数据库名
});
connection.connect(); //数据库连接
connection.query('SELECT 1 + 1 AS solution', function (error, results, fields) {
if (error) throw error;
console.log('The solution is: ', results[0].solution);
}); //检验连接成功
执行 node connect.js
出现The solution is: 2
表示连接成功
2.增加用户
先连接数据库再定义增加用户的模板
//userInsert.js
const mysql = require("mysql");
const connection = mysql.createConnection({
host: "localhost",
user: "root",
password: "123456",
database: "test"
});
connection.connect();
//连接之后进行插入操作
const addSql = 'insert user (id,name,sex,age,tel,mail,note) values(?,?,?,?,?,?,?)';
const addSqlParams = [null,"孙","man",13,"1234567","234567@qq.com","fghavi"];
connection.query(addSql,addSqlParams,function (err,result) {
if(err){
console.log('[INSERT ERROR] - ',err.message);
return;
}
console.log('INSERT ID:',result);
});
connection.end();
执行node userInsert.js
3.查询操作
查询操作也要先链接数据库再对数据库进行操作
const mysql = require("mysql");
const connection = mysql.createConnection({
host: "localhost",
user: "root",
password: "123456",
database: "test"
});
connection.connect();
//连接之后进行查询操作
const sql = "select * from user"; //选择所有
connection.query(sql,function (err, result) {
if(err){
console.log('[SELECT ERROR] - ',err.message);
return;
}
console.log(result);
}); //输出查询结果
connection.end();
4.更新操作
根据数据库的主键进行查询更新
//userUpdate.js
//连接数据库与之前的相同 连接之后进行修改
const modSql = "update user set name=?,sex=?,age=?,tel=?,mail=?,note=? where id = ?";
//根据id进行修改
const modSqlParams = ["及","woman",32,"345678","ndsajvn@qq.com","adsvfadsv",2];
//修改后的内容
connection.query(modSql,modSqlParams,function (err, result) {
if(err){
console.log('[UPDATE ERROR] - ',err.message);
return;
}
console.log('UPDATE success',result.affectedRows);
});
//输出更新是否成功
connection.end();
可以再对数据库进行查询判断是否更新成功
5.数据库删除
根据数据库主键对某一条记录进行删除操作
//userDelete.js
//l数据库连接之后进行删除操作
const delSql = 'delete from user where id = "4"';
//根据id删除
connection.query(delSql,function (err, result) {
if(err){
console.log('[DELETE ERROR] - ',err.message);
return;
}
console.log('DELETE success',result.affectedRows);
});
connection.end();
执行node userDelete.js 可以看到删除结果,也可以通过数据库查询再判断是否删除成功。
6.遇到的问题
- musql无法显示中文
alter table tbl_name convert to character set utf8;
就这么多啦~