Nodejs-操作数据库

1.简介

首先连接MySQL数据库之前需要先去安装npm包管理中的MySQL模块,该模块支持MySQL5.7+的数据库;然后安装好MySQL5.7+的数据库。

安装命令:npm install mysql --save

2.创建连接

参数 描述
host 主机地址 (默认:localhost)
user 用户名
password 密码
Port 端口号(默认端口号:3306)
database 数据库名
charset 连接字符集(默认:‘UTF8_GENERAL_CI’,注意字符集的字母都要大写)
具体记住这些参数

2.1基本数据库连接

//node连接MySQL数据库
const mysql = require ('mysql')
//创建连接
let conn=mysql.createConnection({
    
    
    //主机地址
    host:'localhost',
    //用户名
    user:'root',
    //密码
    password:'root',
    //数据库名称
    database:'xsgl'
})
//获取连接
conn.connect((err)=>{
    
    
    if(err) throw err;
    console.log('连接成功');
})

//关闭数据库连接
conn.end((err)=>{
    
    
    if (err) throw err;
    console.log("关闭成功");
})

//销毁连接 (和关闭连接选择其一)
//conn.destroy();

最后终端输出的内容是:
终端输出

2.2数据库查询的操作

查询user表中的全部内容

//node连接MySQL数据库
const mysql = require ('mysql')
//创建连接
let conn=mysql.createConnection({
    //主机地址
    host:'localhost',
    //用户名
    user:'root',
    //密码
    password:'root',
    //数据库名称
    database:'xsgl'
})
//获取连接
conn.connect((err)=>{
    if(err) throw err;
    console.log('连接成功');
})
//result->查询结果
let sql1='select * from user';
conn.query(sql1,(err,result)=>{
    if(err){
        console.log(err.message);
    }
    else{
        console.log('------------------');  
        console.log(result);
        console.log("查询完成");
        console.log('------------------');  
    }
})
//关闭数据库连接
conn.end((err)=>{
    if (err) throw err;
    console.log("关闭成功");
})

最后终端输出的内容
在这里插入图片描述

2.3数据库插入数据的操作

//node连接MySQL数据库
const mysql = require ('mysql')
//创建连接
let conn=mysql.createConnection({
    //主机地址
    host:'localhost',
    //用户名
    user:'root',
    //密码
    password:'root',
    //数据库名称
    database:'xsgl'
})
//获取连接
conn.connect((err)=>{
    if(err) throw err;
    console.log('连接成功');
})
//插入数据
var  addSql = "INSERT INTO user(id,name,phone)VALUES(null,?,?)";
conn.query(addSql,['xs','18135627895'],(err, result)=>{
        if(err){
        console.log(err.message);
        }else{
            console.log(result);
            console.log('插入成功');
        }
    })  

//关闭数据库连接
conn.end((err)=>{
    if (err) throw err;
    console.log("关闭成功");
})

最后终端输出的内容是:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Wq8LDBaF-1637560466561)(https://note.youdao.com/yws/res/e/WEBRESOURCEcac7f1e965211d7565c7d7de53214f1e)]

2.4 数据库修改数据操作

//node连接MySQL数据库
const mysql = require ('mysql')
//创建连接
let conn=mysql.createConnection({
    //主机地址
    host:'localhost',
    //用户名
    user:'root',
    //密码
    password:'root',
    //数据库名称
    database:'xsgl'
})
//获取连接
conn.connect((err)=>{
    if(err) throw err;
    console.log('连接成功');
})
//修改数据
var modSql = 'UPDATE user SET name = ?,phone=? WHERE Id = ?';
var modSqlParams = ['杨过', '15777358659',1];
conn.query(modSql,modSqlParams,(err, result)=>{
    if(err){
    console.log(err.message);
    }else{
        console.log(result);
        console.log('修改成功');
    }
})
//关闭数据库连接
conn.end((err)=>{
    if (err) throw err;
    console.log("关闭成功");
})

终端显示的内容
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ailOS1Ay-1637560466563)(https://note.youdao.com/yws/res/b/WEBRESOURCE4622541e611bb9557ff89732222812fb)]

数据库的内容是:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Kmkf8Usq-1637560466564)(https://note.youdao.com/yws/res/0/WEBRESOURCEb7578bb3436cca579fbdcbd0ffff1d00)]

扫描二维码关注公众号,回复: 13355600 查看本文章

2.5删除数据库数据

//node连接MySQL数据库
const mysql = require ('mysql')
//创建连接
let conn=mysql.createConnection({
    //主机地址
    host:'localhost',
    //用户名
    user:'root',
    //密码
    password:'root',
    //数据库名称
    database:'xsgl'
})
//获取连接
conn.connect((err)=>{
    if(err) throw err;
    console.log('连接成功');
})
//删除数据
var delSql = 'DELETE FROM user where id=1';
conn.query(delSql,(err, result)=>{
    if(err){
    console.log(err.message);
    }else{
        console.log(result);
        console.log("删除成功");
    }
})
//关闭数据库连接
conn.end((err)=>{
    if (err) throw err;
    console.log("关闭成功");
})

终端显示的内容

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-M1A86Q6w-1637560466566)(https://note.youdao.com/yws/res/e/WEBRESOURCE44ae5de37a480b64a59df8cb22e95efe)]

id为1的数据删除成功

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-YC7RCnD0-1637560466567)(https://note.youdao.com/yws/res/0/WEBRESOURCE169c62181290cd0c58bf9b4b7c293200)]

猜你喜欢

转载自blog.csdn.net/weixin_50233139/article/details/121470144