SQL语言
- SQL语言,moongdb不能使用SQL语言操作
增删改查
-- select * from users
-- select username,password from users
-- insert into users (id,username,password) values ('4','tony01','123456') 插入一行数据
-- update users set password='66666' where id=4
-- update users set password='add123' , status=1 where id=2 修改一行中的密码与状态
-- delete from users where id=3
where子句(范围)运算符
and与or
order by(排序:升ASC/降DESC)
多重排序
按状态大范围的降序排序,按名称小范围升序排序??
count()统计条数
AS起别名
在项目中使用mysql数据库
npm i mysql
配置db.js->测试
//配置mysql
//1.导入mysql
const mysql = require('mysql')
//2.创建与数据库的连接关系
const db=mysql.createPool({
host:'127.0.0.1',//数据库的ip地址
user:'root',
password:'123456',
database:'my_db_01',//要连接的数据库
})
// 测试mysql
db.query('SELECT 1',(err, result)=>{
if(err) return console.log(err);
console.log(result);
})
集成终端中输入:node db.js//没报错说明执行成功
使用mysql
使用mysql查询数据
执行成功返回一个数组
...
//查询users表中的所有数据
const sqlStr='select * from users'
db.query(sqlStr,(err, result)=>{
if(err) return console.log(err);
console.log(result);
})
终端输入(查看结果):node db.js
使用mysql插入数据
result.affactedRows影响行数
插入数据执行成功返回的是一个对象,result.affactedRows===1是执行成功了
//.......
//插入一行数据,执行的是对象
const user={id:3,username:'jisoo',password:'jisoo'}
//定义sql语句
const sqlStr='insert into users (id,username,password) values (?,?,?)'
//执行sql语句
db.query(sqlStr,[user.id,user.username,user.password],(err,results)=>{
if(err) return console.log(err);
//返回对象,results.affectedRows===1插入数据成功
if(results.affectedRows===1){
console.log('插入数据成功');
}
})
终端输入(查看结果):node db.js
便捷方式
'insert into users set ?',直接填充对象
使用mysql更新数据
//.......
//更新数据
const user={id:3,username:'金珍妮',password:'123456789'}
//要执行的sql语句
const sqlStr='update users set username=?,password=? where id=?'
//连接执行sql语句
db.query(sqlStr,[user.username,user.password,user.id],(err,results)=>{
if (err) return console.log(err)
if (results.affectedRows===1){
console.log('更新成功');
}
})
终端输入(查看结果):node db.js
便捷方式
使用mysql删除数据
尽量使用id来删除数据
标记删除(常用)
直接删除太危险,通常使用标记删除来表示删除
如何使用:用更新status状态设置为1来表示指定用户被删除了