nodejs连接数据库

1、下载模块

使用npm下载mysql模块

npm install mysql --save    //--save代表自动把模块和版本号添加到devdependencies部分

2、引入mysql模块

//声明一个变量用来接收引入模块
var mysql = require('mysql')

3、创建一个数据库连接

//声明一个变量接收
var connection = mysql.createConnection({
    host		:'localhost',	//主机域名,默认是localhost
    port		:'3306',	    //端口号,(可以省略)
    user		:'root',       //用户名
    password	:'root',	   //密码
    database	:'sys'		   //数据库名称
})

4、进行连接(也可以省略)

//connection是创建数据库连接的变量
connection.connect()

5、执行增删改查SQL语句

首先复习一下SQL语句的增删改查

insert into 表名 values(字段1,字段二,。。。。);
delete from 表名 where 条件;(一定要加条件否则很危险)
update 表名 set 字段一 = new_字段内容,字段二 = new_字段内容,... where 条件(一定要加条件否则很危险)
select * from 表名 where 条件;

开始写node.js的增删改查,大体跟php差不太多

注释:query(sql,bind,function(){}) 执行语句的函数,里面有三个参数,第一个参数代表SQL语句,第二个参数代表,绑定sql预处理参数,(不懂sql预处理请自行百度),第三个参数代表,回调函数(callback)。

需要使用sql预处理,加第二个参数,不需要预处理则不用写第二个参数

  • 插入数据(增)

    //connection是创建数据库连接的变量
    //声明一个变量用来存储SQL语句
    var sql = 'insert into user values(NUll,?,?)'//NULL代表自增的id值,?代表SQL预处理占位符,几个参数几个?
    //声明一个变量用来存储SQL预处理绑定参数(类型为数组类型)
    var sqlbind = ['csdn','www.csdn.net']//根据数据表中的字段类型决定要不要加引号
    connection.query(sql,sqlbind,function(error,results){
        //函数中写SQL执行完之后需要执行的代码
        //error代表错误信息,如果没有错误,error为null
        //results代表返回值
    })
    
  • 删除数据(删)

    //声明一个变量用来存储SQL语句
    var sql = 'delete from user where id = ?'//NULL代表自增的id值,?代表SQL预处理占位符,几个参数几个?
    //声明一个变量用来存储SQL预处理绑定参数(类型为数组类型)
    var sqlbind = [1]//根据数据表中的字段类型决定要不要加引号
    connection.query(sql,sqlbind,function(error,results){
        //函数中写SQL执行完之后需要执行的代码
        //error代表错误信息,如果没有错误,error为null
        //results代表返回值
    })
    
  • 更新数据(改)

    //声明一个变量用来存储SQL语句
    var sql = 'update user set name = ?,url = ? where id = ?'//NULL代表自增的id值,?代表SQL预处理占位符,几个参数几个?
    //声明一个变量用来存储SQL预处理绑定参数(类型为数组类型)
    var sqlbind = ['百度','www.baidu.com']//根据数据表中的字段类型决定要不要加引号
    connection.query(sql,sqlbind,function(error,results){
        //函数中写SQL执行完之后需要执行的代码
        //error代表错误信息,如果没有错误,error为null
        //results代表返回值
    })
    
  • 查取数据(查)

    //声明一个变量用来存储SQL语句
    var sql = 'select * from user'//NULL代表自增的id值,?代表SQL预处理占位符,几个参数几个?
    connection.query(sql,function(error,results){
        //函数中写SQL执行完之后需要执行的代码
        //error代表错误信息,如果没有错误,error为null
        //results代表返回值(返回的是查取的数据)
    })
    

6、关闭数据库连接

//connection是创建数据库连接的变量
connection.end()
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 10
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

要爆炸的臭臭君

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值