NodeJs基础
在NodeJS里面,NodeJS提供了一些基础的模块,供我们直接导入使用
NodeJS操作MySql数据库
NodeJS没有提供直接操作数据库的方法,它需要使用第三方的工具去完在这个操作,这个工具我们可以使用包管理管理工具(NPM)去获得
创建项目
在NodeJS项目里面,必然会有一个package.json的文件用来描述当前项目的相关信息,这个文件是通过npm init
来生成的,它记录了当前项目的版本,名称,描述等相关信息,最重要的是它记录了当前项目的引用模块信息
导入相关模块
因为NodeJs操作MySql数据库的时候,它需要我们去使用第三包的包,我们现在就使用npm/cnpm
从服务器上面下载相关的包
$ cnpm install mysql
创建数据库连接
let conn = mysql.createConnection({
host:"127.0.0.1",
port:3306,
user:"root",
password:"123456",
database:"studentmanager"
});
准备Sql语句
let strSql="select * from 学生信息";
执行SQL语句,返回结构
conn.query(strSql,[],function(err,result){
//数据库执行成功或者是失败
//err代表失败
//result代表成功
if(err){
console.log("数据库执行失败"+err);
}
else{
//console.log(result); //得到的是集合 我就去遍历result
for(let item of result){
console.log(`学号:${item.学号},姓名:${item.姓名},性别:${item.性别}`);
}
}
conn.end(); //结束,断开连接
});
说明:因为执行是查询语句,所以得到的是一个集合,我们可以通过for…of进行遍历
如果我们执行是inset语句,则返回受影响的行数,看代码
let strSql="INSERT INTO studentmanager.课程信息 (课程名称, 任课教师, 是否必修) VALUES ('小哥哥恋爱学', '20200101', '是')"
conn.query(strSql,[],(err,result)=>{
if(err){
console.log("你执行失败了"+err);
}
else {
console.log(result);
}
conn.end();
});
上面的affectedRows代表受影响的行数,insertId代表数据库自增长Id