node.js: mysql Connection in vscode
mysql script:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | drop table `vuedustu`; CREATE TABLE `vuedustu` ( `stuId` int (11) NOT NULL AUTO_INCREMENT comment '学生编号' , `stuname` varchar (255) DEFAULT NULL comment '学姓姓名' , `stusex` varchar (255) DEFAULT NULL comment '性别' , `stucollege` varchar (255) DEFAULT NULL comment '院系' , `stuclass` varchar (255) DEFAULT NULL comment '班级' , PRIMARY KEY (`stuId`) ) ENGINE=MyISAM comment= '学生表' AUTO_INCREMENT=2025807108 DEFAULT CHARSET=utf8; INSERT INTO `vuedustu` VALUES (2025101101, '陈二' , '男' , '农学院' , '园林25(1)班' ), (2025307101, '李三' , '男' , '工程学院' , '土木25(1)班' ), (2025407101, '张四' , '男' , '电气与信息学院' , '计算机25(1)班' ), (2025407102, '王五' , '女' , '电气与信息学院' , '计算机25(1)班' ), (2025507121, '赵一' , '女' , '人文与生命科技学院' , '生技25(1)班' ), (2025607101, '何六' , '女' , '会计学院' , '会计25(1)班' ), (2025707121, '刘八' , '男' , '经济管理学院' , '经管25(1)班' ), (2025807102, '金九' , '男' , '理学院' , '信息工程25(1)班' ), (2025807105, '银十' , '女' , '工学院' , '自动化工程25(2)班' ), (2025807107, '涂不' , '女' , '医学院' , '临床科学班(3)班' ); select * from vuedustu; |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | // /** * db.js * node 20 vue.js 3.0 * ide: vscode * mysql 8.0 * npm install express cors body-parser connect-multiparty */ // 数据库连接配置 const db ={ mysql:{ host: 'localhost' , //主机ip地址 port: '3306' , //端口号 user: 'root' , //用户名 password: 'geovindu' , //密码 database: 'geovindu' , //数据库名 } } //exports.conMysql = conMysql export default db; |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | /** * sqlMap.js sql语句 * node 20 vue.js 3.0 * ide: vscode * mysql 8.0 * npm install express cors body-parser connect-multiparty */ const sqlMap = { Stu: { add: 'insert into vuedustu(stuId,stuname,stusex,stucollege,stuclass) values (0,?,?,?,?)' , show: 'select * from vuedustu' , del: 'delete from vuedustu where stuId = ?' , update: 'update vuedustu set stuname = ?,stusex = ?,stucollege = ?,stuclass = ? where stuId = ?' } } // module.exports = sqlMap export default sqlMap; |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 | /** * api/StuApi.js * node 20 vue.js 3.0 * ide: vscode * mysql 8.0 * npm install express cors body-parser connect-multiparty */ import sqlMap from '../sqlMap.js' import db from '../db.js' import express from 'express' const router = express.Router() import mysql from 'mysql' const $sql =sqlMap // require('../sqlMap') // 连接数据库 const conn = mysql.createConnection(db.mysql) conn.connect() const jsonWrite = function (res, ret) { if ( typeof ret === 'undefined' ) { res.json({ code: '1' , msg: '操作失败' }) } else { res.json( ret ) } } // 接口:增加信息 router.post( '/addStu' , (req, res) => { const sql = $sql.Stu.add const params = req.body console.log( '添加' , params) conn.query(sql, [params.stuname, params.stusex, params.stucollege, params.stuclass], function (err, result) { if (err) { console.log(err) } if (result) { jsonWrite(res, result) } }) }) // 接口:查询全部 http://localhost:3003/Stu/showStu router.get( '/showStu' , (req, res) => { const sql = $sql.Stu.show const params = req.body console.log(params) conn.query(sql, [params.stuId, params.stuname, params.stusex, params.stucollege, params.stuclass], function (err, result) { if (err) { console.log(err) } if (result) { jsonWrite(res, result) } }) }) // 接口:删除信息 router.post( '/delStu' , (req, res) => { const sql = $sql.Stu.del const params = req.body console.log( '删除' , params) conn.query(sql, [params.stuId], function (err, result) { if (err) { console.log(err) } if (result) { jsonWrite(res, result) } }) }) // 接口:修改信息 router.post( '/updateStu' , (req, res) => { const sql = $sql.Stu.update const params = req.body console.log( '修改' , params) conn.query(sql, [params.stu_name, params.stu_sex, params.stu_college, params.stu_class, params.stu_Id], function (err, result) { if (err) { console.log(err) } if (result) { jsonWrite(res, result) } }) }) //module.exports = router export default router // |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 | /** * index.js * node 20 vue.js 3.0 * ide: vscode * mysql 8.0 * npm install express cors body-parser connect-multiparty */ import express from 'express' import bodyParser from 'body-parser' import fs from 'fs' import path from 'path' import StuApi from './api/StuApi.js' const app = express() //采用设置所有均可访问的方法解决跨域问题 app.all( "*" , function (req, res, next) { //设置允许跨域的域名,*代表允许任意域名跨域 res.header( "Access-Control-Allow-Origin" , "*" ); //允许的header类型 res.header( "Access-Control-Allow-Headers" , "content-type" ); //跨域允许的请求方式 res.header( "Access-Control-Allow-Methods" , "DELETE,PUT,POST,GET,OPTIONS" ); if (req.method.toLowerCase() == 'options' ) res.send(200); //让options尝试请求快速结束 else next(); }) app.use(bodyParser.json()) // 以json格式返回出去 app.use(bodyParser.urlencoded({ extended: false })) // 后端api路由 app.use( '/Stu' ,StuApi) // // 监听端口 app.listen(3003) console.log( 'success listen at port:3003......' ) |
运行:
1 | node index |
哲学管理(学)人生, 文学艺术生活, 自动(计算机学)物理(学)工作, 生物(学)化学逆境, 历史(学)测绘(学)时间, 经济(学)数学金钱(理财), 心理(学)医学情绪, 诗词美容情感, 美学建筑(学)家园, 解构建构(分析)整合学习, 智商情商(IQ、EQ)运筹(学)生存.---Geovin Du(涂聚文)
分类:
Ajax&JavaScript
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
2013-08-07 Csharp:字符串操作