美文网首页
Nodejs搭配Mysql

Nodejs搭配Mysql

作者: 977777 | 来源:发表于2017-07-15 20:55 被阅读1910次

终于有一天,自己开始主动写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

插入执行结果g

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;

就这么多啦~

相关文章

网友评论

      本文标题:Nodejs搭配Mysql

      本文链接:https://www.haomeiwen.com/subject/dqjzhxtx.html