node.js对于数据库MySQL基本操作实例总结【增删改查】

yizhihongxing

下面是 “node.js对于数据库MySQL基本操作实例总结【增删改查】” 的完整攻略。

一、前置知识

在学习本文之前,需要掌握以下知识点:

  • Node.js 基础知识
  • MySQL数据库基础知识
  • Node.js连接MySQL的方法

二、环境搭建

在 node.js 项目中使用 MySQL,需要使用到 node.js 驱动程序。本文中我们使用 mysql 驱动,可通过 npm 安装。

在命令行窗口中输入以下命令进行安装:

npm install mysql --save

三、实现增删改查

连接数据库

在使用 mysql 驱动之前,需要先连接到数据库。连接过程包括配置数据库连接信息和创建数据库连接。代码如下:

const mysql = require('mysql');
const connection = mysql.createConnection({
  host: 'localhost',     //主机名
  port: 3306,            //端口号
  user: 'root',          //用户名
  password: '123456',    //密码
  database: 'test'       //数据库名
});

//连接数据库
connection.connect((err) => {
  if (err) {
    console.error('error connecting: ' + err.stack);
    return;
  }
  console.log('connected as id ' + connection.threadId);
});

插入数据

使用 SQL 语句插入一条数据,使用 mysql 驱动的 query() 方法即可。代码如下:

connection.query('insert into user set ?', { name: 'Tom', age: 18 }, (error, results, fields) => {
  if (error) throw error;
  console.log('插入成功');
  console.log(results);
});

查询数据

使用 SQL 语句查询数据,查询结果作为回调函数的第二个参数返回。代码如下:

connection.query('select * from user', (error, results, fields) => {
  if (error) throw error;
  console.log('查询结果为:');
  console.log(results);
});

更新数据

使用 SQL 语句更新一条数据,使用 mysql 驱动的 query() 方法即可。代码如下:

connection.query('update user set age=? where name=?', [20, 'Tom'], (error, results, fields) => {
  if (error) throw error;
  console.log('更新成功');
  console.log(results);
});

删除数据

使用 SQL 语句删除一条数据,使用 mysql 驱动的 query() 方法即可。代码如下:

connection.query('delete from user where name=?', ['Tom'], (error, results, fields) => {
  if (error) throw error;
  console.log('删除成功');
  console.log(results);
});

四、示例说明

示例一

假设我们有一个名为 users 的表,包含以下字段:

  • id:主键,自增长
  • name:姓名,不唯一
  • age:年龄,整型

我们可以使用以下代码创建表:

CREATE TABLE `users` (
  `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
  `name` varchar(255) DEFAULT NULL,
  `age` int(11) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

然后我们可以使用以下代码插入一条数据并查询:

connection.query('insert into users set ?', { name: 'Tom', age: 18 }, (error, results, fields) => {
  if (error) throw error;
  console.log('插入成功');
  console.log(results);
});

connection.query('select * from users', (error, results, fields) => {
  if (error) throw error;
  console.log('查询结果为:');
  console.log(results);
});

示例二

假设我们现在要实现一个简单的博客系统,需要实现文章的增删改查。我们可以使用以下代码创建文章表:

CREATE TABLE `articles` (
  `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
  `title` varchar(255) NOT NULL,
  `content` text NOT NULL,
  `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `updated_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

然后我们可以使用以下代码实现文章的增删改查:

// 插入文章
connection.query('insert into articles set ?', { title: 'Hello World!', content: '这是我的第一篇博客' }, (error, results, fields) => {
  if (error) throw error;
  console.log('插入成功');
  console.log(results);
});

// 查询文章
connection.query('select * from articles', (error, results, fields) => {
  if (error) throw error;
  console.log('查询结果为:');
  console.log(results);
});

// 更新文章
connection.query('update articles set title=?, content=? where id=?', ['Hello Node.js!', '这是我的第一篇 Node.js 博客', 1], (error, results, fields) => {
  if (error) throw error;
  console.log('更新成功');
  console.log(results);
});

// 删除文章
connection.query('delete from articles where id=?', [1], (error, results, fields) => {
  if (error) throw error;
  console.log('删除成功');
  console.log(results);
});

五、总结

本文介绍了如何使用 node.js 驱动 mysql 实现数据库的增删改查,同时提供了两个示例代码。通过学习本文,您应该已经基本掌握了如何在 node.js 项目中使用 mysql 驱动程序进行数据库操作。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:node.js对于数据库MySQL基本操作实例总结【增删改查】 - Python技术站

(0)
上一篇 2023年5月21日
下一篇 2023年5月21日

相关文章

  • Mysql开启慢SQL并分析原因

    下面是详细讲解如何开启慢SQL并分析原因的完整攻略: 1. 开启慢SQL日志 MySQL 提供了慢查询日志功能,可以记录执行时间超过规定阈值的 SQL 语句。通过开启慢SQL日志,可以了解到哪些SQL查询语句执行缓慢,以便优化性能,提高查询效率。 1.1 修改my.cnf配置文件 首先,我们需要修改my.cnf配置文件,以开启慢SQL日志。在使用过程中,可能…

    database 2023年5月19日
    00
  • EXECUTE IMMEDIATE用法小结

    下面我将为你详细讲解“EXECUTE IMMEDIATE用法小结”的完整攻略。 1. EXECUTE IMMEDIATE是什么 EXECUTE IMMEDIATE 是 PL/SQL 语言中用于动态执行 SQL 语句的关键字。它可以将 SQL 语句作为一个字符串进行封装,并在运行时动态执行该字符串所代表的 SQL 语句。 2. EXECUTE IMMEDIAT…

    database 2023年5月21日
    00
  • Windows系统中完全卸载MySQL数据库实现重装mysql

    下面是完整攻略: 1. 停止MySQL服务 首先,需要停止正在运行的MySQL服务。可以在命令行窗口中输入以下命令实现停止服务: net stop mysql 2. 卸载MySQL 在控制面板中找到“程序和功能”选项,找到MySQL进行卸载。如果没有通过安装程序安装MySQL,可以直接删除MySQL的安装目录。 3. 删除MySQL相关文件 在卸载MySQL…

    database 2023年5月22日
    00
  • MySQL如何支撑起亿级流量

    MySQL是一款开源的关系型数据库系统,被广泛应用于企业应用和互联网应用中。MySQL在支撑亿级流量方面具备良好的性能和可扩展性,但需要进行适当的配置优化和使用相关的技术手段。 以下是MySQL支撑亿级流量的完整攻略: 1. 架构设计 在支撑大规模并发请求时,MySQL需要采用合理的架构设计来确保可靠性和性能。以下是一个典型的MySQL架构设计: 主数据库:…

    database 2023年5月22日
    00
  • SQL 提取姓名的首字母

    提取姓名的首字母,可以使用 SQL 函数 LEFT 和 SUBSTR 来实现。 在姓名列中,首先需要使用 LEFT 函数获取姓名的第一个字符,然后使用 UPPER 函数将该字符转换为大写,最终得到姓名的首字母。 以下是两个示例: 示例一 假设有一个名为 users 的数据表,其中有一个名为 name 的列,存储着用户的姓名。 首先使用以下查询语句从 user…

    database 2023年3月27日
    00
  • Windows服务器下MySql数据库单向主从备份详细实现步骤分享

    下面我将为您详细讲解“Windows服务器下MySql数据库单向主从备份详细实现步骤分享”的完整攻略。 步骤一:创建主从复制用户 登录mysql: mysql -u root -p 创建主从复制用户 CREATE USER ‘replicator’@’%’ IDENTIFIED BY ‘123456’; GRANT REPLICATION SLAVE ON …

    database 2023年5月21日
    00
  • CentOS下PHP7的编译安装及MySQL的支持和一些常见问题的解决办法

    下面是“CentOS下PHP7的编译安装及MySQL的支持和一些常见问题的解决办法”的完整攻略。 1. 安装编译工具 在编译PHP7之前,我们需要先安装一些编译工具。在CentOS下,可以使用以下命令进行安装: yum update yum install gcc libgcc libstdc++ gcc-c++ zlib-devel autoconf au…

    database 2023年5月22日
    00
  • Linux 下进程的挂起和恢复命令

    进程的挂起和恢复是 Linux 系统下常见的操作。本文将介绍在 Linux 下进程的挂起和恢复命令的完整攻略,同时提供两个实际的示例说明。 进程的挂起 当系统中有一些进程正在执行时,有时需要挂起某些进程以便进行其他操作。在 Linux 下,可以使用以下命令来暂停进程的执行: kill -STOP <PID> 其中,PID 是需要暂停的进程的进程 …

    database 2023年5月22日
    00
合作推广
合作推广
分享本页
返回顶部