Node NodeJs是如何连接、操作MySQL数据库的

NodeJs操作MySQL数据库

  • 步骤:
    1. 引入模块。
    2. 创建配置对象。
    3. 创建连接数据库的对象。
    4. 建立连接。
    5. 执行Sql语句。

1 引入模块

  • 安装驱动:$ cnpm install mysql

  • 引入模块:mysql

const mysql = require("mysql");
复制代码

2 创建配置对象

  • 配置对象的地址、端口号、用户名、密码和数据库名等。
let options = {
    host:"localhost",       //IP地址      
    port:"3306",            //端口号,(可选,默认3306 )                  
    user:"root",            //数据库用户名
    password:"yourDatabasePassword", //数据库密码
    database:'database1',   //数据库名
}
复制代码

3 创建连接数据库的对象

  • 创建连接对象方法:mysql.createConnection()
let con = mysql.createConnection(options);
复制代码

4 建立连接

  • 建立连接方法:con.connect()
con.connect((err)=>{
    // 若连接建立失败
    if(err){
        console.log(err);
    }else{
        console.log("连接成功!");
    }
});
复制代码

5 执行Sql语句

  1. 创建sql语句

  2. query()方法异步处理,回调函数得到相对应的数据

    let strSql = "select * from allPhone";
    复制代码
    con.query(strSql,(err,results,fields)=>{
        // err错误信息;results结果内容;fields字段信息;
        console.log(err);
        console.log(results);
        console.log(fields);
    });
    复制代码

5.1 增

  • 创建数据库create database 库名

    let strSql1 = "create database database1";
    con.query(strSql1,(err,results)=>{
        console.log(err);
        console.log(results);
    });
    复制代码
  • 创建表create table 表名 (字段 类型 是否为空)

    //创建表的sql语句
    let strSql2 = "CREATE TABLE `NewTable1` (`id`  int NOT NULL ,`username`  varchar(255) NULL ,`password`  varchar(255) NULL ,PRIMARY KEY (`id`));";
    //执行
    con.query(strSql2,(err,results)=>{
        console.log(err);
        console.log(results);
    });
    复制代码
  • 向表中插入数据insert into table (字段) values (值)

    let strSqlIn = "insert into NewTable1 (id,username,password) values (1,'SillyBoy','123456')";
    con.query(strSqlIn,(err,results)=>{
        console.log(err);
        console.log(results);
    }); 
    复制代码

5.2 删

  • 删除数据库drop database 库名

    let strSql3 = "drop database database1";
    con.query(strSql3,(err,results)=>{
        console.log(err);
        console.log(results);
    });
    复制代码
  • 删除表drop table 表名

    let strSql4 = "drop table NewTable1";
    con.query(strSql4,(err,results)=>{
        console.log(err);
        console.log(results);
    });
    复制代码
  • 删除表中数据delete from 表名 where 筛选条件

    let strSql5 = "delete from NewTable1 where id='3'";
    con.query(strSql5,(err,results)=>{
        console.log(err);
        console.log(results);
    });
    复制代码

5.3 改

  • 修改表中数据update tableName set * where *

    let strSql6 = "update NewTable1 set username='Silly',password='Silly' where id='2' and username='SillyGirl'";
    con.query(strSql6,(err,results)=>{
        console.log(err);
        console.log(results);
    });
    复制代码

5.4 查

  • 查询表中数据select * from 表名

    let strSql7 = "select * from NewTable1";
    con.query(strSql7,(err,results)=>{
        console.log(err);
        console.log(results);
    });
    复制代码

6 完整代码

//1、引入模块
const mysql = require("mysql");
//2、配置配置对象
let options = {
    host:"localhost",       //地址      
    port:"3306",            //端口号,(可选,默认3306 )                  
    user:"root",            //数据库用户名
    password:"justsoso741", //数据库密码
    database:'database1',   //数据库名
};
//3、创建连接对象
let con = mysql.createConnection(options);
//4、建立连接
con.connect((err)=>{
    // 若连接建立失败
    if(err){
        console.log(err);
    }else{
        console.log("连接成功!");
    }
});
//5、查询表中所有数据
let strSql7 = "select * from NewTable1";
con.query(strSql7,(err,results)=>{
    console.log(err);
    console.log(results);
});
复制代码
{ id: 1, username: 'SillyBoy', password: '123456' }
复制代码
© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享