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()
来源:oschina
链接:https://my.oschina.net/u/4265461/blog/4938348