安装mysql

$ npm isntall mysql

连接数据库

需要根据实际配置修改数据库用户名、及密码及数据库名

let mysql = require('mysql');

let connection = mysql.createConnection({
host: 'localhost',
user: '***', // 用户名
password: '***', // 密码
port: '3306',
database: 'node_mysql_test' // 数据库名称
}); connection.connect((err, result) => {
if (err) {
console.log(err);
console.log("连接失败");
return;
}
console.log(result);
console.log("连接成功");
}); connection.end(); // 结束连接

在 MySQL 数据库中创建初始数据

终端输入:

mysql -u 【数据库名称】 -p
mysql> create database node_mysql_test default character set utf8 default collate utf8_general_ci;
mysql> use node_mysql_test;
mysql> source 『将users.sql文件直接拖拽至终端,自动补全其文件目录』

将users.sql文件如下:

SET NAMES utf8;
SET FOREIGN_KEY_CHECKS = 0; -- ----------------------------
-- Table structure for `users`
-- ----------------------------
DROP TABLE IF EXISTS `users`; CREATE TABLE `users` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` char(20) NOT NULL DEFAULT '' COMMENT '姓名',
`email` varchar(255) NOT NULL DEFAULT '',
`age` int(11) NOT NULL DEFAULT '0' COMMENT '年龄',
`city` char(10) NOT NULL DEFAULT '' COMMENT '城市',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8; -- ----------------------------
-- Records of `users`
-- ----------------------------
BEGIN;
INSERT INTO `users` VALUES ('1', '张三', 'zhangsan@qq.com', '18', '上海'), ('2', '李四', '1234@163.com', '23', '重庆'), ('3', '王五', 'abc@sina.cn', '33', '青岛'), ('4', '马六', '666@qq.com', '19', '南京');
COMMIT; SET FOREIGN_KEY_CHECKS = 1;

查询数据

let mysql = require('mysql');

let connection = mysql.createConnection({
host: 'localhost',
user: '***',
password: '***',
port: '3306',
database: 'node_mysql_test'
}); connection.connect((err, result) => {
if (err) {
console.log(err);
console.log("连接失败");
return;
}
console.log(result);
console.log("连接成功");
}); /**
* -------------------
* 查询数据
* -------------------
*/ let selectSql = 'SELECT * FROM users'; connection.query(selectSql, (err, result) => {
if (err) {
console.log('[SELECT 失败] - ', err.message);
return;
} console.log('--------------SELECT------------');
console.log('查询成功:',result);
console.log('--------------------------\n\n');
}); connection.end();

增加数据


let mysql = require('mysql'); let connection = mysql.createConnection({
host: 'localhost',
user: '***',
password: '***',
port: '3306',
database: 'node_mysql_test'
}); connection.connect((err, result) => {
if (err) {
console.log(err);
console.log("连接失败");
return;
}
console.log(result);
console.log("连接成功");
}); /**
* -------------------
* 增加数据
* -------------------
*/ let addSql = 'INSERT INTO users(Id,name,email,age,city) VALUES(0,?,?,?,?)';
let addSqlParams = ['赵七', '777@qq.com', '22', '大连']; connection.query(addSql, addSqlParams, (err, result) => {
if (err) {
console.log('[增加失败] - ', err.message);
return;
} console.log('--------------INSERT-------------');
console.log('增加成功 ID:',result.insertId);
console.log('增加成功:', result);
console.log('--------------------------------\n\n');
}); connection.end();

更新数据

let mysql = require('mysql');

let connection = mysql.createConnection({
host: 'localhost',
user: '***',
password: '***',
port: '3306',
database: 'node_mysql_test'
}); connection.connect((err, result) => {
if (err) {
console.log(err);
console.log("连接失败");
return;
}
console.log(result);
console.log("连接成功");
}); /**
* -------------------
* 更新数据
* -------------------
*/ let modSql = 'UPDATE users SET name = ?,email = ? WHERE Id = ?';
let modSqlParams = ['Tom', 'tom@qq.com', 7]; connection.query(modSql, modSqlParams, (err, result) => {
if (err) {
console.log('[更新失败] - ', err.message);
return;
}
console.log('----------UPDATE---------------');
console.log('更新成功', result.affectedRows);
console.log('-------------------------------\n\n');
}); connection.end();

删除数据

let mysql = require('mysql');

let connection = mysql.createConnection({
host: 'localhost',
user: '***',
password: '***',
port: '3306',
database: 'node_mysql_test'
}); connection.connect((err, result) => {
if (err) {
console.log(err);
console.log("连接失败");
return;
}
console.log(result);
console.log("连接成功");
}); /**
* -------------------
* 删除数据
* -------------------
*/ let delSql = 'DELETE FROM users where id=4'; connection.query(delSql, (err, result) => {
if (err) {
console.log('[删除失败] - ', err.message);
return;
} console.log('--------DELETE---------------');
console.log('删除成功', result.affectedRows);
console.log('------------------------\n\n');
}); connection.end();

Node.js 实现 MySQL 数据库增删改查的更多相关文章

  1. Java连接MySQL数据库增删改查通用方法

    版权声明:本文为博主原创文章,未经博主允许不得转载. Java连接MySQL数据库增删改查通用方法 运行环境:eclipse+MySQL 以前我们Java连接MySQL数据库都是一个数据库写一个类,类 ...

  2. MySQL数据库(增删改查语句)

    MySQL数据库(增删改查语句)一.登录数据库:---->  mysql -uroot -proot;(对应用户名和密码)二.SQL语句:    数据定义语言DDL  用来定义数据库.表.列,关 ...

  3. python操作mysql数据库增删改查的dbutils实例

    python操作mysql数据库增删改查的dbutils实例 # 数据库配置文件 # cat gconf.py #encoding=utf-8 import json # json里面的字典不能用单引 ...

  4. Asp.Net操作MySql数据库增删改查

    Asp.Net操作MySql数据库增删改查,话不多说直接步入正题.git源码地址:https://git.oschina.net/gxiaopan/NetMySql.git  1.安装MySQL数据库 ...

  5. Python实现mysql数据库增删改查

    利用python操作mysql数据库用法简单,环境配置容易,本文将实现对库增.删.改.查的简易封装!   1. 环境配置 安装第三方包  ,导入模块 mysql.connector  pip inst ...

  6. jsp-2 简单的servlet连接mysql数据库 增删改查

    连接mysql数据库的操作 有增删改查 用的包有 commons-lang3-3.5 mysql-connector-java-5.1.40-bin 但是实际上也就是 数据查询和数据处理两种 所以对数 ...

  7. 安卓版php服务器的mysql数据库增删改查简单案例

    界面: index.php文件: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "h ...

  8. python2.7入门---操作mysql数据库增删改查

    Python 标准数据库接口为 Python DB-API,Python DB-API为开发人员提供了数据库应用编程接口.Python 数据库接口支持非常多的数据库,你可以选择适合你项目的数据库: G ...

  9. MySQL数据库增删改查等常用命令介绍

    MySQL可以说是最常用的小型数据库,加上现在越来越流行的分布式架构,哪怕是一般的中大型项目也可以用MySQL来进行部署. 数据库的操作最常用的就是增删改查,还有一些切换数据库等操作.以下命令不加说明 ...

随机推荐

  1. android -------- VideoCache 视频播放(缓存视频到本地)

    先前做了一个小视频的功能,里面有播放多个视频的功能,为了效率,我加了视频缓存功能: 一方面耗费用户的流量,另一方面直接从本地播放要更流畅 网上看资料,一个视频缓存库,使用起来很方便,还不错,就分享给大 ...

  2. 解决若依linux启动ERROR - unregister mbean error javax.management.InstanceNotFoundException: com.alibaba.druid:type=

    项目中使用druid对数据库连接池进行管理,在本地及测试环境均无问题,但是上了生产环境后,每当tomcat第一次启动时,日志未报错,但是页面总是出不来,在关闭tomcat时,看日志,发现报错如下: E ...

  3. elementui---表格拖动排序的问题

    刚刚用elementui的表格,需要用到一个拖动排序的需求,简单弄了下,使用 Sorttable 来做还是挺快的,但是发现一个问题,拖动排序显示不正常. <el-table :data=&quo ...

  4. nsqphp源码分析(一)

    一.目录结构 二.

  5. linux命令(55):环境变量:LIBRARY_PATH 和 LD_LIBRARY_PATH的区别

    添加环境变量:https://www.cnblogs.com/lovychen/p/5583703.html PATH是可执行文件的环境变量. LIBRARY_PATH 和 LD_LIBRARY_PA ...

  6. LR 算法总结--斯坦福大学机器学习公开课学习笔记

    在有监督学习里面有几个逻辑上的重要组成部件[3],初略地分可以分为:模型,参数 和 目标函数.(此部分转自 XGBoost 与 Boosted Tree) 一.模型和参数   模型指给定输入xi如何去 ...

  7. Python - Django - form 组件动态从数据库取 choices 数据

    app01/models.py: from django.db import models class UserInfo(models.Model): username = models.CharFi ...

  8. node框架那些事儿

    一.简单介绍 express:适合初学者,模版引擎,路由,中间件 koa2:核心中间件 eggjs:企业级应用框架 二.express 服务端框架,提供路由功能,异常处理.路由系统+中间件构成web开 ...

  9. Linux下 Nginx安装与配置(Centos7)

    1:下载解压 #下载 wget http://nginx.org/download/nginx-1.14.0.tar.gz #解压 tar -xzf nginx-1.14.0.tar.gz cd ng ...

  10. 嵌入式02 STM32 实验10 定时器中断

    优秀文章 https://blog.csdn.net/qq_38351824/article/details/82619734 一.STM32通用定时器(TIM2.TIM3.TIM4和TIM5共四个通 ...