nodejs连接数据库的增删改查
连接数据库后需要用代码操作的是,传入mysql语句,和参数,然后就是回调了
新增
// 新增
app.post('/process_post', urlencodedParser, function (req, res) { //post处理方法
var response = {
"names":req.body.names, //得到页面提交的数据
"passwords":req.body.passwords
};
//鏈接數據庫
var mysql = require("mysql");
var connection = mysql.createConnection({ //配置参数,然后添加你的数据库里面的表
host: '数据库地址',
user: '用户名',
password: '密码',
database: '数据库名称'
})
connection.connect(); //连接
//插入數據
var addSql = "insert into formtable(name,password) values(?,?)"; //mysql语句
var addParmas = [response.names, response.passwords];//传递参数进入
connection.query(addSql, addParmas, function(err, res) {
if(err) {
console.log("[insert error]-", err.message);
return;
}else{
show(res)//回调
}
})
function show(arr){
result.data=arr;
res.json(result);//返回给前端
res.end();
} })
上面的urlencodedParser是一个编码解释工具
删除
//删除数据
app.post('/del', urlencodedParser, function (req, res) { //post处理方法
var response = {
"ids":req.body.id //得到页面提交的数据
};
//鏈接數據庫
var mysql = require("mysql");
var connection = mysql.createConnection({ //配置参数,然后添加你的数据库里面的表
host: '数据库地址',
user: '用户名',
password: '密码',
database: '数据库名称'
})
connection.connect(); //连接
var userDelSql = 'DELETE FROM formtable WHERE id = ?';
var addParmas = [response.ids];
connection.query(userDelSql,addParmas,function(err, res) {
if(err) {
console.log('[select error]-', err.message);
return;
}else{
show(res)
}
})
function show(arr){
result.data=arr;
res.json(result);
res.end();
}
})
查询
// 初始化
app.post('/init', urlencodedParser, function (req, res) { //post处理方法
var response = {
"names":req.body.names //得到页面提交的数据
};
//鏈接數據庫
var mysql = require("mysql");
var connection = mysql.createConnection({ //配置参数,然后添加你的数据库里面的表
host: '数据库地址',
user: '用户名',
password: '密码',
database: '数据库名称'
})
connection.connect(); //连接
var selectSql = "select * from formtable";
connection.query(selectSql, function(err, res) {
if(err) {
console.log('[select error]-', err.message);
return;
}else{
show(res)
}
})
function show(arr){
result.data=arr;
res.json(result);
res.end();
}
})
修改
//修改数据
app.post('/modify', urlencodedParser, function (req, res) { //post处理方法
var response = {
"ids":req.body.ids, //得到页面提交的数据
"names":req.body.names,
"passwords":req.body.passwords
};
//鏈接數據庫
var mysql = require("mysql");
var connection = mysql.createConnection({ //配置参数,然后添加你的数据库里面的表
host: '数据库地址',
user: '用户名',
password: '密码',
database: '数据库名称'
})
connection.connect(); //连接
var userModSql = 'UPDATE formtable SET name = ?,password = ? WHERE id = ?';
var addParmas = [response.names,response.passwords,response.ids];
console.log(addParmas);
connection.query(userModSql,addParmas,function(err, res) {
if(err) {
console.log('[select error]-', err.message);
return;
}else{
show(res)
}
})
function show(arr){
result.data=arr;
res.json(result);
res.end();
}
})
以上的"/modify" '/del' '/init''/process_post'这个四个就是四个接口,看完上面四个你就会觉得连接数据库增删改查没有什么的,当然啦,关于里面的方法你可以自己进行封装一下啦,增加他的复用性
完整代码
//表單提價
from_submit(); //为了方便管理我用函数包起来调用
var result = {
"status": "200",
"message": "success",
}
//表單提價
function from_submit(){
var express = require('express'); //调用模板
var app = express(); //不污染本来,用变量来表示
var bodyParser = require('body-parser'); //调用模板
var mysql = require('mysql'); app.use(express.static('public')); //设置今天文件目录 // app.get('/form_index.html',function(req,res){
// res.sendFile(__dirname+"/"+form_index.html); //提供静态文件
// })
//设置跨域访问
app.all('*', function(req, res, next) {
res.header("Access-Control-Allow-Origin", "*");
res.header("Access-Control-Allow-Headers", "X-Requested-With");
res.header("Access-Control-Allow-Methods","PUT,POST,GET,DELETE,OPTIONS");
res.header("X-Powered-By",' 3.2.1');
res.header("Content-Type", "application/json;charset=utf-8");
next();
}); //創建編碼解析
var urlencodedParser = bodyParser.urlencoded({ extended: false })
// 新增
app.post('/process_post', urlencodedParser, function (req, res) { //post处理方法 // 输出 JSON 格式
var response = {
"names":req.body.names, //得到页面提交的数据
"passwords":req.body.passwords
};
//鏈接數據庫
var mysql = require("mysql");
var connection = mysql.createConnection({ //配置参数,然后添加你的数据库里面的表
host: 'localhost',
user: 'root',
password: 'root',
database: 'test'
})
connection.connect(); //连接
//插入數據
var addSql = "insert into formtable(name,password) values(?,?)"; //存放数据库语言的,这里是添加
var addParmas = [response.names, response.passwords];
connection.query(addSql, addParmas, function(err, res) {
if(err) {
console.log("[insert error]-", err.message);
return;
}else{
show(res)
}
})
function show(arr){
result.data=arr;
res.json(result);
res.end();
} })
// 初始化
app.post('/init', urlencodedParser, function (req, res) { //post处理方法
// 输出 JSON 格式
var response = {
"names":req.body.names //得到页面提交的数据
};
//鏈接數據庫
var mysql = require("mysql");
var connection = mysql.createConnection({ //配置参数,然后添加你的数据库里面的表
host: 'localhost',
user: 'root',
password: 'root',
database: 'test'
})
connection.connect(); //连接
var selectSql = "select * from formtable";
connection.query(selectSql, function(err, res) {
if(err) {
console.log('[select error]-', err.message);
return;
}else{
show(res)
}
})
function show(arr){
result.data=arr;
res.json(result);
res.end();
}
})
//删除数据
app.post('/del', urlencodedParser, function (req, res) { //post处理方法
// 输出 JSON 格式
var response = {
"ids":req.body.id //得到页面提交的数据
};
//鏈接數據庫
var mysql = require("mysql");
var connection = mysql.createConnection({ //配置参数,然后添加你的数据库里面的表
host: 'localhost',
user: 'root',
password: 'root',
database: 'test'
})
connection.connect(); //连接
var userDelSql = 'DELETE FROM formtable WHERE id = ?';
var addParmas = [response.ids];
connection.query(userDelSql,addParmas,function(err, res) {
if(err) {
console.log('[select error]-', err.message);
return;
}else{
show(res)
}
})
function show(arr){
result.data=arr;
res.json(result);
res.end();
}
})
//修改数据
app.post('/modify', urlencodedParser, function (req, res) { //post处理方法
// 输出 JSON 格式
var response = {
"ids":req.body.ids, //得到页面提交的数据
"names":req.body.names,
"passwords":req.body.passwords
};
//鏈接數據庫
var mysql = require("mysql");
var connection = mysql.createConnection({ //配置参数,然后添加你的数据库里面的表
host: 'localhost',
user: 'root',
password: 'root',
database: 'test'
})
connection.connect(); //连接
var userModSql = 'UPDATE formtable SET name = ?,password = ? WHERE id = ?';
var addParmas = [response.names,response.passwords,response.ids];
console.log(addParmas);
connection.query(userModSql,addParmas,function(err, res) {
if(err) {
console.log('[select error]-', err.message);
return;
}else{
show(res)
}
})
function show(arr){
result.data=arr;
res.json(result);
res.end();
}
}) var server = app.listen(3000, function () { //监听
var host = server.address().address
var port = server.address().port
console.log("应用实例,访问地址为 http://%s:%s", host, port)
}) }
写这个主要还是方便我自己学习啦,如果有好的建议可以一起交流或者指教我一下~
注:上面代码中的formtable 是我本地数据库的其中一个表而已,如果你的表明不是这个记得链接数据库后传入的mysql语句中修改一下
nodejs连接数据库的增删改查的更多相关文章
- nodejs+express+mysql 增删改查
之前,一直使用的是nodejs+thinkjs来完成自己所需的项目需求,而对于nodejs中另外一中应用框架express却了解的少之又少,这两天就简单的了解了一下如何使用express来做一些数据库 ...
- 简单实现 nodejs koa2 mysql 增删改查 制作接口
1.首先 在电脑上安装 nodejs (此处略过) 2.全局安装 koa2 (这里使用的淘宝镜像cnpm,有兴趣的同学可以自行搜索下) cnpm install koa-generator -g 3. ...
- nodejs+express+mysql 增删改查(二)
1.最早一篇关于express框架简单的增删改查文章,http://www.cnblogs.com/zhengyeye/p/nodejs.html#3947308:意外走红博客园,无奈自己之前一直没有 ...
- 基于springmvc、ajax,后台连接数据库的增删改查
前言 前段时间在博客园上找了一个springmvc的例子,照着学了一下,算是对springmvc有了一个初步的了解,打一个基础,下面是链接.(我只看了博客,视频太耗时间了) 博客链接:http://w ...
- BaseDao代码,用于连接数据库实行增删改查等操作
在学习JavaWeb时会用到此代码,用于实行增删改查操作 1 package com.bdqn.dao; import java.sql.Connection; import java.sql.Dri ...
- JDBC连接数据库及增删改查操作
什么是JDBC?Java语言访问数据库的一种规范,是一套APIJDBC (Java Database Connectivity) API,即Java数据库编程接口,是一组标准的Java语言中的接口和类 ...
- Java连接数据库,增删改查
底层代码: package com.zdsoft; import java.sql.*; /** * Created by lx on 2017/6/22. */ public class JDBCU ...
- Nodejs操作MySQL - 增删改查
先安装npm模块项目 npm init 安装mysql npm install mysql --save Nodejs 连接msyql // 导入mysql const mysql = require ...
- ListView 连接数据库的增删改查
private string link = "server=.;database=list;user=sa;pwd=123"; public void chaxun() //创建一 ...
随机推荐
- shell之使用paste命令按列拼接多个文件
试验文件: [root@db03 shell-script]# cat text1.txt 1 2 3 4 5 [root@db03 shell-script]# cat text2.txt orac ...
- 转:web.xml 配置中classpath: 与classpath*:的区别
原文链接:web.xml 配置中classpath: 与classpath*:的区别 引用自:http://blog.csdn.net/wxwzy738/article/details/1698393 ...
- el表达式获取对象属性值 返回值类型
实现 数字页码时 遇到的一个问题. 后端servlet 在request.setAttribute("page",page); page 为pagebean的实例对象,pagebe ...
- MySQL 数据库登录查询
1. 进入到bin目录: 键入cd..,一直到出现C:\ 为止 然后cd bin所在路径: 如: C:\cd C:\Program Files\MySQL\MySQL Server 5.7 ...
- python摸爬滚打之day11----函数闭包,迭代器
1.函数名 函数名就是一个变量名, 函数名存储的是该函数的内存地址. 函数名都可以进行哪些应用? 函数名可以赋值给其他的变量; 函数名可以作容器里的元素使用; 函数名可以当做形参传进另一函数; ...
- Oracle内置函数SQLCODE和SQLERRM的使用
在我们写proc程序中经常要有错误处理,在错误处理中我们经常要输出错误信息来给帮助我们分析和解决错误原因,从而更正数据.这时候就会用到SQLCODE和SQLERRM. SQLCode:数据库操作的返回 ...
- (4.1)mysql备份还原——mysql常见故障
(4.1)mysql备份还原——mysql常见故障 1.常见故障类型 在数据库环境中,常见故障类型: 语句失败,用户进程失败,用户错误 实例失败,介质故障,网络故障 其中最严重的故障主要是用户错误和介 ...
- 呼叫转接ECT
ECT(Explicit Call Transfer,呼叫转接)是一种较为特殊的补充业务.签约ECT业务的用户A先呼叫用户B,在与用户B建立通话后,用户A通过终端发起保持用户B呼叫的请求,此时用户B会 ...
- vue 获取屏幕宽高 width height
/** * 获取屏幕宽高 */ Vue.prototype.getViewportSize = function(){ return { width: window.innerWidt ...
- Spark SQL DataFrame新增一列的四种方法
方法一:利用createDataFrame方法,新增列的过程包含在构建rdd和schema中 方法二:利用withColumn方法,新增列的过程包含在udf函数中 方法三:利用SQL代码,新增列的过程 ...