node.js操作mysql(增删改查)

使用Node.js操作MySQL数据库,需要先安装mysql和mysql2模块,可以通过npm安装:

npm install mysql mysql2

其中mysql2是MySQL的一个纯Node.js驱动程序,提供更好的性能和安全性。接下来,操作MySQL的增删改查可以按如下步骤进行:

连接数据库

首先需要使用mysql2模块中提供的createConnection()方法来创建数据库连接:

const mysql = require('mysql2');

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

connection.connect((err) => {
  if (err) {
    console.error('连接数据库出错:', err);
  } else {
    console.log('数据库已成功连接!');
  }
})

其中,host是数据库服务器的地址,userpassword是登录数据库的账号和密码,database是你要连接的数据库名。

插入数据

使用connection.query()方法可以插入一条数据到数据库中:

const insertSql = 'INSERT INTO users (username, age, gender) VALUES (?, ?, ?)';
const insertValues = ['Tom', 18, 'male'];

connection.query(insertSql, insertValues, (err, results) => {
  if (err) {
    console.error('插入数据出错:', err);
  } else {
    console.log('插入数据成功!', results);
  }
})

其中,insertSql为要插入的SQL语句,?为占位符,insertValues是要插入的值。

查询数据

使用connection.query()方法可以查询数据库中的记录:

const querySql = 'SELECT * FROM users WHERE age > ?';
const queryValues = [18];

connection.query(querySql, queryValues, (err, results) => {
  if (err) {
    console.error('查询数据出错:', err);
  } else {
    console.log('查询到的数据为:', results);
  }
})

其中,querySql为要查询的SQL语句,queryValues是查询条件的值。这里的查询结果将会返回一个数组,数组中的每一项是一条记录。

更新数据

使用connection.query()方法可以更新数据库中的记录:

const updateSql = 'UPDATE users SET gender = ? WHERE id = ?';
const updateValues = ['female', 1];

connection.query(updateSql, updateValues, (err, results) => {
  if (err) {
    console.error('更新数据出错:', err);
  } else {
    console.log('更新数据成功!', results);
  }
})

其中,updateSql为要更新的SQL语句,updateValues是要更新的值。这里的更新结果将会返回一个对象,包含更新的行数。

删除数据

使用connection.query()方法可以删除数据库中的记录:

const deleteSql = 'DELETE FROM users WHERE id = ?';
const deleteValues = [1];

connection.query(deleteSql, deleteValues, (err, results) => {
  if (err) {
    console.error('删除数据出错:', err);
  } else {
    console.log('删除数据成功!', results);
  }
})

其中,deleteSql为要删除的SQL语句,deleteValues是删除条件的值。这里的删除结果将会返回一个对象,包含删除的行数。

以上就是Node.js操作MySQL(增删改查)的完整攻略。接下来,我们来看两个例子。

示例1:插入一条记录

const mysql = require('mysql2');

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

connection.connect((err) => {
  if (err) {
    console.error('连接数据库出错:', err);
  } else {
    const insertSql = 'INSERT INTO users (username, age, gender) VALUES (?, ?, ?)';
    const insertValues = ['Tom', 18, 'male'];

    connection.query(insertSql, insertValues, (err, results) => {
      if (err) {
        console.error('插入数据出错:', err);
      } else {
        console.log('插入数据成功!', results);
      }
      connection.end();
    });
  }
});

示例2:查询所有年龄大于18岁的记录

const mysql = require('mysql2');

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

connection.connect((err) => {
  if (err) {
    console.error('连接数据库出错:', err);
  } else {
    const querySql = 'SELECT * FROM users WHERE age > ?';
    const queryValues = [18];

    connection.query(querySql, queryValues, (err, results) => {
      if (err) {
        console.error('查询数据出错:', err);
      } else {
        console.log('查询到的数据为:', results);
      }
      connection.end();
    });
  }
});

以上就是Node.js操作MySQL(增删改查)的完整攻略及两个示例。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:node.js操作mysql(增删改查) - Python技术站

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

相关文章

  • 解读node.js中的path路径模块

    节点(Node.js)的path模块提供了一些有用的函数来管理文件路径。 在本攻略中,我们将讨论这个模块的一些常用函数,以及如何使用它们解析文件路径。 获取文件名 使用path模块可以方便地解析文件名,例如,path.basename()函数可以从文件路径中提取文件名。 const path = require(‘path’); console.log(pa…

    node js 2023年6月8日
    00
  • 安装Node.js并创建Web程序

    下面是关于”安装Node.js并创建Web程序”的完整攻略: 安装Node.js 访问Node.js官网,选择下载适配你操作系统的程序。 安装程序并按照提示操作。 创建Web程序 打开你的终端(Mac或Linux)或命令行提示(Windows),输入以下命令:mkdir mywebapp,创建一个名为mywebapp的目录。 输入以下命令进入mywebapp…

    node js 2023年6月8日
    00
  • node.js中的fs.realpath方法使用说明

    Node.js中的fs.realpath方法使用说明 什么是fs.realpath方法 在Node.js中,使用fs.realpath(path, options, callback)方法可以将一个传递的路径解析为一个规范的绝对路径。该方法还可以选择性地解析符号链接,并返回最终的路径。 如何使用fs.realpath方法 使用方法 fs.realpath()…

    node js 2023年6月8日
    00
  • Node.js的npm包管理器基础使用教程

    那么我们就开始来详细讲解一下“Node.js的npm包管理器基础使用教程”的完整攻略。 什么是npm包管理器? npm是Node.js的包管理器,可以通过npm来安装、升级、卸载与管理Node.js模块和包。npm是随同Node.js一起安装的,当你安装Node.js之后,npm就已经安装好了。 如何使用npm包管理器? 1. 初始化项目 在一个项目文件夹内…

    node js 2023年6月8日
    00
  • node.js包管理工具Yarn使用简介

    Node.js包管理工具Yarn使用简介 简介 Yarn 是一款由 Facebook、Google、Tilde 共同开发的新一代 Node.js 包管理工具,旨在解决 npm 包管理器在依赖关系分析和管理上的一些性能问题。Yarn 的设计重点是性能、可靠性和安全性,提供了快速、可靠和安全的依赖项管理。 安装 可以通过以下命令安装 Yarn: npm inst…

    node js 2023年6月8日
    00
  • nodejs中函数的调用实例详解

    下面我将为大家详细讲解“Node.js中函数的调用实例详解”。 什么是函数 首先,我们需要了解什么是函数。在JavaScript(和Node.js)中,函数是一段可重用的代码,它们提供了一种封装代码的方式,可以接受参数,可以返回值也可以不返回值。函数的调用必须使用函数名和一对括号。 下面是一个简单的函数示例: function add(a, b) { ret…

    node js 2023年6月8日
    00
  • JS前端认证授权技巧归纳总结

    JS前端认证授权技巧归纳总结 什么是认证和授权? 在讲解JS前端认证和授权技巧之前,我们需要先了解认证和授权的概念。 认证(Authentication):是指验证一个用户是否合法的过程,常用的认证方式包括账号密码、邮箱验证码等。 授权(Authorization):是指确定该用户是否有权利进行某个操作或访问某个资源的过程,常用的授权方式包括角色权限、资源权…

    node js 2023年6月8日
    00
  • JS模板实现方法

    当我们需要在JavaScript中生成HTML代码时,通常使用字符串拼接的方式。但是,这种方法非常繁琐且容易出错。为了解决这个问题,我们可以使用模板实现方法。 什么是JS模板实现方法 JS模板实现方法是一种用于生成HTML代码、替换字符等的工具。通过使用模板,我们可以轻松地创建代码片段,并且通过替换语法来填充要显示的内容。 实现方法 实现JS模板的方法有很多…

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