首页 >数据库 >mysql教程 >主题延续:如何创建集成 Google Drive、MySQL 和 Node.js 的个人财务应用程序

主题延续:如何创建集成 Google Drive、MySQL 和 Node.js 的个人财务应用程序

Patricia Arquette
Patricia Arquette原创
2025-01-05 11:24:39844浏览

Continuación del Hilo: Cómo Crear una Aplicación de Finanzas Personales Integrando Google Drive, MySQL y Node.js

第 6 步:连接数据库**

在这一步中,我们探索如何在 Node.js 应用程序和 MySQL 数据库之间建立连接以有效地保存数据。您将学会:

  • 在 Node.js 中配置您的数据库凭据。
  • 使用mysql2库来管理连接。
  • 创建基本查询来插入、更新和检索数据。

此步骤对于优化应用程序的性能至关重要,避免连续读取 Google Drive 中的文件并允许更有效地分析存储的数据。 ?

Node.js中MySQL连接数据库代码文档

此代码使用 mysql2 建立与 MySQL 数据库的连接,并使用 Promise 处理连接错误和查询。下面详细介绍了该过程的每个部分以记录其使用。


代码设置

  1. 环境要求及配置:

    • 与 MySQL 数据库交互需要 mysql2 软件包。
    • dotenv 用于管理环境变量,允许安全配置数据库凭据等敏感信息。
    • 连接配置是从配置文件或环境变量(如果使用 dotenv)获取的。
    const mysql = require('mysql2');
    const { promisify } = require('util');
    require('dotenv').config();  // Cargar variables de entorno
    const localhost = process.env.DATABASE_CONFIG || require('../config');  // Recuperar configuración desde dotenv o archivo de configuración
    
  2. 连接池的创建:

    • 使用恢复的配置创建连接池。这有助于维持持久且可重用的连接,从而优化性能。
    const pool = mysql.createPool(localhost);
    
  3. 查询的承诺:

    • 查询被承诺使用 Promisify 异步处理它们。这简化了查询结果和错误的管理。
    pool.query = promisify(pool.query);
    
  4. 错误管理

    • 处理可能的连接错误和查询。例如,对访问被拒绝、连接丢失或达到最大连接数等错误进行专门处理。
    pool.getConnection()
        .then(connection => {
            connection.release();
            console.log("Conexión establecida correctamente.");
        })
        .catch(err => {
            if (err.code === 'ER_NOT_SUPPORTED_AUTH_MODE' || err.code === 'ER_ACCESS_DENIED_ERROR') {
                console.error('Error de acceso denegado. Revise las credenciales.');
            } else if (err.code === 'PROTOCOL_CONNECTION_LOST') {
                console.error('La conexión con la base de datos se perdió.');
            } else if (err.code === 'ER_CON_COUNT_ERROR') {
                console.error('Demasiadas conexiones activas.');
            } else if (err.code === 'ECONNREFUSED') {
                console.error('La conexión con la base de datos fue rechazada.');
            } else {
                console.error(`Error desconocido: ${err.message}`);
            }
        });
    

代码详细解释

  1. 要求和配置

    • mysql2提供了与MySQL交互的API。
    • dotenv 用于通过 .env 文件或直接环境变量来管理配置。
    • localhost 包含主机、用户、密码等数据库配置数据
  2. 池创建

    • mysql.createPool(localhost) 创建持久连接,这对于同时处理多个连接的应用程序来说是理想的选择。
  3. 承诺

    • SQL 查询被承诺用作异步函数,使其在现代应用程序中更易于处理。
  4. 错误管理

    • 连接丢失、访问被拒绝或查询拒绝等常见错误都会得到仔细处理,以便向开发人员提供有用的消息并避免崩溃。

在项目中使用

此代码对于将 Node.js 应用程序与 MySQL 数据库连接非常有用,为使用承诺化和适当的异常处理等现代技术的连接和错误管理提供了强大的解决方案。

const mysql = require('mysql2');
const { promisify } = require('util');
require('dotenv').config();  // Cargar variables de entorno
const localhost = process.env.DATABASE_CONFIG || require('../config');  // Recuperar configuración desde dotenv o archivo de configuración

以上是主题延续:如何创建集成 Google Drive、MySQL 和 Node.js 的个人财务应用程序的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn