node.js操作sql详细步骤

1.为什么要学习node.js

  1. 了解nodejs
  2. 了解后端(读取本地文件、连接数据库的、响应请求)
  3. 了解api接口文档

2.检测是否有node以及mysql是否安装成功

node -v

  • 若出现此种情况
    在这里插入图片描述
  • 进行如下操作。通过ctrl+alt+delete 找到任务管理器,在服务里面找到mysql点击开始
    在这里插入图片描述
  • 然后再进行如下操作 mysql -u root -p 输入密码即可
    在这里插入图片描述

3.初始化项目

  1. 切换到项目目录
  2. npm init -y

4.使用第三方模块

  1. 安装模块npm i axios -S
  2. 导入模块const axios = require("axios")
  3. 使用模块axios.get(url).then(res=>{})

5.使用自定义模块

  1. 定义模块utils.js
    module.exports ={max(){},randomStr(){}}
  2. 导入与使用(方法一)
    导入const utils = require('./utils.js')
    使用 utils.max() utils.randomStr()
    导入与使用(方法二)
    导入const {max,randomStr} = require(' ./utils.js')
    使用max() randomStr()
  3. 快捷导出
    exports.say = function(){console.log("到结婚了年龄吗?")}

6.项目运行

  1. 配置命令
package.json->script
"serve":"node main.js"
npm run serve
  1. cmd
    1.进入项目目录
    2.node main/js

7.mysql命令

  1. 查询select
SELECT * FROM `feedback ` WHERE 1;
//指定列查询 
SELECT 'msg ',' name'  `FROM `feedback` WHERE 1;
//添加查询条件 
SELECT * FROM feedback WHERE name='小曾;
//查询msg中包含山的元素  %代表是任意字符
SELECT * FROM `feedback` where msg like '%%;
//_代表任意一个字符串
select* from feedback where msg like '山_有%';
//desc按时间排序降序
select * from feedback where 1 order by `datetime ' desc;
//查询偏移2个截取3行
select * from feedback where 1 order by `datetime ' desc limit2,3;
  1. 增加 insert into
  2. 删除 delete
  3. 修改 update

8.node操作sql⭐

  1. 安装npm i mysql -S

  2. 导入const mysql = require("mysql")

  3. 创建连接const conn = mysql.createConnect({ host:"localhost", user:"root", password:"", ​database:"feed"})

  4. 连接数据库
    conn.connect(function(err){if(!err){console.log("数据库连接成功")}})
    连接数据库需要用到navicate ⭐
    1.打开连接 找到mysql
    在这里插入图片描述

    2.输入密码 成功之后出现留言板 双击打开
    在这里插入图片描述
    3.成功之后出现留言板 双击打开
    在这里插入图片描述

  5. 定义sql var sql = "select * from feedback where 1”

  6. 执行sql conn.query(sql,function(err,result){if(!err){console.log(result)}})

  7. 断开数据库conn.end(function(){console.log("数据库己断开")})

9.内置服务器创建⭐

1.导入http const http = require("http")
2.创建服务
const server = http.createServer(function(req,res){ //req请求的数据 //res响应的数据 res.statusCode = 200; //响应码 res.setHeader("Content-Type","application/json") //响应类型 res.end({})//返回的数据 })
3. 监听端口
server.listen(8888,function(){ console.log("localhost:8888 启动") })

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
基于node.js的购物车系统可以通过以下步骤实现: 1. 首先,需要安装node.js和npm包管理器。可以在官网上下载安装包,也可以使用命令行安装。 2. 创建一个新的node.js项目,并使用npm安装所需的依赖包,例如express、body-parser、mysql等。 3. 设计数据库结构,并使用mysql创建相应的表格。 4. 创建服务器,并使用express框架处理HTTP请求和响应。可以使用路由来处理不同的URL请求。 5. 实现用户注册和登录功能,可以使用session来保存用户信息。 6. 实现商品搜索和展示功能,可以使用mysql数据库来存储商品信息,并使用模板引擎来渲染页面。 7. 实现购物车功能,可以使用session来保存用户的购物车信息,并使用ajax来实现添加、删除、修改购物车商品的功能。 8. 实现订单功能,可以使用mysql数据库来存储订单信息,并使用模板引擎来渲染订单页面。 9. 最后,进行测试和部署。 以下是一个简单的node.js购物车系统的代码示例: ```javascript // 引入依赖包 const express = require('express'); const bodyParser = require('body-parser'); const session = require('express-session'); const mysql = require('mysql'); // 创建服务器 const app = express(); // 设置中间件 app.use(bodyParser.urlencoded({ extended: false })); app.use(bodyParser.json()); app.use(session({ secret: 'shoppingcart', resave: false, saveUninitialized: true, cookie: { secure: false } })); // 连接数据库 const connection = mysql.createConnection({ host: 'localhost', user: 'root', password: 'password', database: 'shoppingcart' }); connection.connect(); // 处理用户注册请求 app.post('/register', (req, res) => { const { username, password } = req.body; const sql = `INSERT INTO users (username, password) VALUES ('${username}', '${password}')`; connection.query(sql, (err, result) => { if (err) throw err; res.send('注册成功'); }); }); // 处理用户登录请求 app.post('/login', (req, res) => { const { username, password } = req.body; const sql = `SELECT * FROM users WHERE username='${username}' AND password='${password}'`; connection.query(sql, (err, result) => { if (err) throw err; if (result.length > 0) { req.session.user = result[0]; res.send('登录成功'); } else { res.send('用户名或密码错误'); } }); }); // 处理商品搜索请求 app.get('/search', (req, res) => { const { keyword } = req.query; const sql = `SELECT * FROM products WHERE name LIKE '%${keyword}%'`; connection.query(sql, (err, result) => { if (err) throw err; res.render('search', { products: result }); }); }); // 处理添加购物车请求 app.post('/addtocart', (req, res) => { const { product } = req.body; if (!req.session.cart) { req.session.cart = []; } req.session.cart.push(product); res.send('添加成功'); }); // 处理查看购物车请求 app.get('/cart', (req, res) => { const { cart } = req.session; res.render('cart', { cart }); }); // 处理提交订单请求 app.post('/submitorder', (req, res) => { const { cart } = req.session; const sql = `INSERT INTO orders (user_id, products) VALUES (${req.session.user.id}, '${JSON.stringify(cart)}')`; connection.query(sql, (err, result) => { if (err) throw err; req.session.cart = []; res.send('提交成功'); }); }); // 启动服务器 app.listen(3000, () => { console.log('Server started on port 3000'); }); ```

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值