使用Express+Node.js对mysql进行增改查操作

使用Express+Node.js对MySQL进行增、改、查操作的步骤如下:

  1. 安装依赖库

在终端输入以下命令:

npm install express mysql --save
  1. 连接到MySQL数据库

在之前所述的程序文件中,require mysql 并定义数据库信息:

const mysql = require('mysql');
const connection = mysql.createConnection({
  host: 'localhost',
  user: 'root',
  password: 'password',
  database: 'database'
});

在连接完成后,使用connection对象来连接数据库:

connection.connect((err) => {
  if (err) throw err;
  console.log('Connected!');
});
  1. 执行SQL语句

可使用connection.query方法执行查询语句,该方法有两个参数:SQL字符串和查询结果回调函数,如:

connection.query('SELECT * FROM table_name', (err, rows) => {
  if (err) throw err;
  console.log(rows);
});

可使用connection.query方法执行添加数据操作,该方法有两个参数:SQL字符串和添加结果回调函数。

connection.query('INSERT INTO table_name SET ?', newRecordObject, (err, result) => {
  if (err) throw err;
  console.log(result);
});

在新记录对象中声明键值对以设置记录值。

let newRecordObject = {
  column_1: 'value_1',
  column_2: 2,
  column_3: true
};

可使用connection.query方法执行更新记录操作,该方法有两个参数:SQL字符串和更新结果回调函数。

connection.query('UPDATE table_name SET column_1 = ? WHERE id = ?', ['new_value', 1], (err, result) => {
  if (err) throw err;
  console.log(result);
});

在第二个参数的数组中声明两个元素,第一个为新的列值,第二个为要更新的记录的 ID 值。

示例1:如何使用Express来添加一条新记录?

在app.js中,新增路由/API,通过POST方法向table_name添加一条新记录。

app.post('/add', (req, res) => {
  let newRecordObject = req.body;
  let sql = 'INSERT INTO table_name SET ?';
  connection.query(sql, newRecordObject, (err, result) => {
    if (err) throw err;
    res.send('New record added!');
  });
});

在前端使用AJAX请求并将新添加记录的数据作为参数发送:

let newRecordObject = {
  column_1: 'new_value_1',
  column_2: 123,
  column_3: true
};

$.ajax({
  url: '/add',
  type: 'POST',
  data: newRecordObject,
  success: function(result) {
    console.log(result);
  }
});

示例2:如何使用Express来查询记录?

在app.js中,建立新的路由/API,通过GET方法查询table_name中的数据:

app.get('/list', (req, res) => {
  let sql = 'SELECT * FROM table_name';
  connection.query(sql, (err, rows) => {
    if (err) throw err;
    res.send(rows);
  });
});

在前端使用AJAX请求并接收服务器返回的JSON对象:

$.ajax({
  url: '/list',
  type: 'GET',
  dataType: 'json',
  success: function(result) {
    console.log(result);
  }
});

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:使用Express+Node.js对mysql进行增改查操作 - Python技术站

(0)
上一篇 2023年6月8日
下一篇 2023年6月8日

相关文章

  • nodeJS实现简单网页爬虫功能的实例(分享)

    下面是 “nodeJS实现简单网页爬虫功能的实例(分享)” 的完整攻略。 简介 网页爬虫是一种自动抓取互联网上数据的技术,可以快速检索网页内容并提取需要的信息,对于开发者或数据分析师来说,网页爬虫是一个高效的数据采集工具。本文主要介绍如何使用NodeJS实现简单的网页爬虫功能。 步骤 第一步:准备工作 在正式开始编写网页爬虫之前,需要在本地安装Node.js…

    node js 2023年6月8日
    00
  • Node.js如何响应Ajax的POST请求并且保存为JSON文件详解

    首先,我们需要创建一个Node.js服务器,以响应Ajax的POST请求。具体步骤如下: 创建Node.js服务器 在终端中运行 mkdir my-project 创建一个新的项目文件夹,并进入该文件夹 cd my-project。 运行 npm init 命令来创建项目的 package.json 文件。 运行 npm install express 安装…

    node js 2023年6月8日
    00
  • 解决vue cli4升级sass-loader(v8)后报错问题

    针对“解决vue cli4升级sass-loader(v8)后报错问题”,我会提供以下完整攻略: 问题背景 在升级 sass-loader 到 v8 版本之后,如果项目依赖了 node-sass,就会在启动 npm run serve 命令时遇到下面的错误: Module build failed (from ./node_modules/sass-load…

    node js 2023年6月8日
    00
  • 详解express + mock让前后台并行开发

    让我来详细讲解一下”详解express + mock让前后台并行开发”的完整攻略。 概述 前后端分离已经成为现代web开发的重要方式,前后端并行开发加快了开发效率。其中,利用mock数据代替后端接口对于前端开发人员是非常有利的。Express是一个流行的Node.js web框架,可以方便的搭建Web应用程序。下面我们将详细介绍如何使用Express + m…

    node js 2023年6月8日
    00
  • Express + Session 实现登录验证功能

    以下是详细的“Express + Session 实现登录验证功能”的完整攻略。 什么是 Session Session 是用来存储用户与 web 服务器交互过程中产生的数据的一种机制。当用户访问 web 服务器时,服务器会生成一个 Session ID,用来标识用户的身份信息,将其发送给客户端,客户端在访问服务器时带上这个 Session ID,服务器根据…

    node js 2023年6月8日
    00
  • 浅谈Vue DIFF

    浅谈Vue DIFF 前言 在Vue中,Diff算法扮演了一个非常重要的角色,它能够高效地计算出页面更新所需的最小操作。本文将从以下几个方面剖析Vue中的Diff算法。 什么是Diff算法 Diff算法是一种计算两个数据版本之间(比如当前显示版本和修改后的新版本)差异的方法。在VUE中,所谓的Diff算法指的是:Virtual DOM Tree的两次产生的比…

    node js 2023年6月8日
    00
  • node.js使用stream模块实现自定义流示例

    下面详细讲解使用Node.js的stream模块实现自定义流的过程。 1. 简介 Node.js中stream模块提供了一组基础抽象类,用于从各种数据源(例如文件、网络、或其他进程)读取数据或写入数据,并且可以通过链式调用实现一系列的数据转换。 在stream模块中,有四种基本类型的流:Readable可读流、Writable可写流、Duplex双工流和Tr…

    node js 2023年6月8日
    00
  • JavaScript运行机制之事件循环(Event Loop)详解

    JavaScript运行机制之事件循环(Event Loop)详解 前言 JavaScript是一门具有单线程执行机制的脚本语言,这意味着它一次只能执行一个任务,不能同时进行多个任务的处理。然而,在进行异步编程时,为了避免出现阻塞,我们经常会使用回调函数。那么,浏览器是如何处理这些异步任务的呢?答案是事件循环机制。 什么是事件循环? 事件循环(Event L…

    node js 2023年6月8日
    00
合作推广
合作推广
分享本页
返回顶部