Rumah >pangkalan data >tutorial mysql >Sambungan Thread: Cara Membuat Aplikasi Kewangan Peribadi Mengintegrasikan Google Drive, MySQL dan Node.js

Sambungan Thread: Cara Membuat Aplikasi Kewangan Peribadi Mengintegrasikan Google Drive, MySQL dan Node.js

Patricia Arquette
Patricia Arquetteasal
2025-01-05 11:24:39839semak imbas

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

Langkah 6: Sambungan dengan Pangkalan Data**

Dalam langkah ini, kami meneroka cara mewujudkan sambungan antara aplikasi Node.js kami dan pangkalan data MySQL untuk mengekalkan data dengan cekap. Anda akan belajar untuk:

  • Konfigurasikan bukti kelayakan pangkalan data anda dalam Node.js.
  • Gunakan perpustakaan mysql2 untuk mengurus sambungan.
  • Buat pertanyaan asas untuk memasukkan, mengemas kini dan mendapatkan semula data.

Langkah ini penting untuk mengoptimumkan prestasi aplikasi, mengelakkan pembacaan berterusan daripada fail dalam Google Drive dan membenarkan analisis data yang disimpan dengan lebih cekap. ?

Dokumentasi Kod untuk Menyambung ke Pangkalan Data dengan MySQL dalam Node.js

Kod ini mewujudkan sambungan ke pangkalan data MySQL menggunakan mysql2 dan mengendalikan ralat sambungan dan pertanyaan menggunakan janji. Setiap bahagian proses diperincikan di bawah untuk mendokumenkan penggunaannya.


Tetapan Kod

  1. Keperluan dan Konfigurasi Alam Sekitar:

    • Pakej mysql2 diperlukan untuk berinteraksi dengan pangkalan data MySQL.
    • dotenv digunakan untuk mengurus pembolehubah persekitaran, membenarkan maklumat sensitif seperti bukti kelayakan pangkalan data dikonfigurasikan dengan selamat.
    • Konfigurasi sambungan diperoleh daripada fail konfigurasi atau daripada pembolehubah persekitaran jika dotenv digunakan.
    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. Penciptaan Kolam Sambungan:

    • Kolam sambungan dibuat menggunakan konfigurasi yang dipulihkan. Ini membantu mengekalkan sambungan yang berterusan dan boleh digunakan semula, mengoptimumkan prestasi.
    const pool = mysql.createPool(localhost);
    
  3. Janji Pertanyaan:

    • Pertanyaan dijanjikan untuk mengendalikannya secara tidak segerak menggunakan promisify. Ini memudahkan pengurusan hasil pertanyaan dan ralat.
    pool.query = promisify(pool.query);
    
  4. Pengurusan Ralat:

    • Kemungkinan ralat sambungan dan pertanyaan dikendalikan. Contohnya, ralat seperti akses ditolak, sambungan terputus atau sambungan maksimum dicapai dikendalikan secara khusus.
    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}`);
            }
        });
    

Penjelasan Terperinci Kod

  1. Keperluan dan Konfigurasi:

    • mysql2 menyediakan API untuk berinteraksi dengan MySQL.
    • dotenv digunakan untuk mengurus konfigurasi melalui fail .env atau pembolehubah persekitaran secara langsung.
    • localhost mengandungi data konfigurasi pangkalan data seperti hos, pengguna, kata laluan, dll.
  2. Penciptaan Kolam Renang:

    • mysql.createPool(localhost) mencipta sambungan berterusan, yang sesuai untuk aplikasi yang mengendalikan berbilang sambungan secara serentak.
  3. Janji:

    • Pertanyaan SQL dijanjikan untuk digunakan sebagai fungsi tak segerak, menjadikannya lebih mudah dikendalikan dalam aplikasi moden.
  4. Pengurusan Ralat:

    • Ralat biasa seperti sambungan terputus, akses ditolak atau penolakan pertanyaan dikendalikan dengan teliti untuk memberikan mesej berguna kepada pembangun dan mengelakkan ranap sistem.

Gunakan dalam Projek

Kod ini berguna untuk menyambungkan aplikasi Node.js dengan pangkalan data MySQL, menyediakan penyelesaian yang mantap untuk sambungan dan pengurusan ralat menggunakan teknik moden seperti janji janji dan pengendalian pengecualian yang betul.

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

Atas ialah kandungan terperinci Sambungan Thread: Cara Membuat Aplikasi Kewangan Peribadi Mengintegrasikan Google Drive, MySQL dan Node.js. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn