Dalam beberapa tahun kebelakangan ini, dengan perkembangan berterusan teknologi Internet, semakin banyak syarikat telah mula berubah kepada Internet. Sebagai topik hangat dalam teknologi Internet, Node.js sentiasa menarik perhatian ramai. Node.js ialah persekitaran berjalan JavaScript berdasarkan enjin Chrome V8 Ia menggunakan model I/O yang dipacu peristiwa dan tidak menyekat untuk mendapatkan kelebihan prestasi tinggi dan kebolehskalaan.
Dalam pembangunan aplikasi Node.js, pangkalan data selalunya perlu diproses. Dalam proses menggunakan pangkalan data, pengurusan proses amat penting. Artikel ini akan meneroka cara menggunakan Node.js untuk menanyakan proses pangkalan data.
1. Node.js dan sambungan pangkalan data
Sebelum menggunakan Node.js untuk menanyakan pangkalan data, anda perlu memasang pakej pemacu pangkalan data yang sepadan. Sebagai contoh, untuk menyambung ke pangkalan data MySQL, anda boleh menggunakan pakej pemacu mysql. Selepas memasang pakej pemacu mysql, kita perlu menggunakan kod berikut untuk mewujudkan sambungan dengan pangkalan data MySQL:
var mysql = require('mysql'); var connection = mysql.createConnection({ host : 'localhost', user : 'root', password : '', database : 'test' }); connection.connect();
Dalam kod di atas, kami menggunakan modul mysql untuk mencipta pangkalan data MySQL bernama sambungan ujian . Antaranya, hos mewakili alamat IP hos di mana pangkalan data terletak, pengguna mewakili nama pengguna untuk menyambung ke pangkalan data, kata laluan mewakili kata laluan untuk menyambung ke pangkalan data, dan pangkalan data mewakili nama pangkalan data yang disambungkan. Baris terakhir kod menggunakan connect() untuk mewujudkan sambungan. Jika sambungan berjaya, kita boleh menggunakan objek sambungan untuk mengendalikan pangkalan data.
2. Tanya data dalam pangkalan data MySQL
Sebelum menggunakan Node.js untuk menanyakan pangkalan data MySQL, kita perlu terlebih dahulu memahami pernyataan SELECT dalam MySQL. Pernyataan SELECT digunakan untuk menanyakan data daripada pangkalan data Sintaks asasnya ialah:
SELECT column_name,column_name FROM table_name WHERE column_name operator value
Antaranya, column_name mewakili nama lajur yang hendak disoal, table_name mewakili nama jadual yang akan disoal. , dan kata kunci WHERE digunakan untuk menetapkan syarat pertanyaan , operator mewakili pengendali syarat pertanyaan dan nilai mewakili nilai syarat pertanyaan.
Apabila menggunakan Node.js untuk menanyakan pangkalan data MySQL, kita perlu mencipta pernyataan SELECT terlebih dahulu. Berikut ialah contoh kod yang menanyakan semua data dalam jadual ujian:
connection.query('SELECT * FROM test', function(error, results, fields) { if (error) throw error; console.log('The solution is: ', results[0].solution); });
Dalam kod di atas, kami menggunakan kaedah query() bagi objek sambungan. Kaedah query() menerima dua parameter: satu ialah pernyataan SELECT untuk dilaksanakan, dan satu lagi ialah fungsi panggil balik. Fungsi panggil balik mengandungi tiga parameter: ralat, hasil dan medan. Antaranya, ralat mewakili maklumat ralat yang berlaku semasa proses pertanyaan, keputusan mewakili set hasil pertanyaan, dan medan mewakili maklumat medan hasil pertanyaan. Jika pertanyaan berjaya, kita boleh menggunakan parameter hasil untuk mendapatkan hasil pertanyaan. Contohnya, anda boleh menggunakan kod berikut untuk mengeluarkan lajur penyelesaian bagi elemen pertama dalam set hasil pertanyaan:
console.log('The solution is: ', results[0].solution);
3. Tanya data dalam pangkalan data MongoDB
Pertanyaan MongoDB menggunakan Node.js Sebelum memasang pangkalan data, anda perlu memasang pakej pemacu pangkalan data MongoDB mongoose. Selepas memasang pakej pemacu mongoose, kita perlu menggunakan kod berikut untuk mewujudkan sambungan dengan pangkalan data MongoDB:
var mongoose = require('mongoose'); mongoose.connect('mongodb://localhost/test', {useNewUrlParser: true});
Dalam kod di atas, kami menggunakan modul mongoose untuk mewujudkan sambungan bernama ujian melalui kaedah connect() sambungan pangkalan data MongoDB. Antaranya, 'mongodb://localhost/test' mewakili alamat sambungan pangkalan data MongoDB, yang serupa dengan parameter semasa menyambung ke pangkalan data MySQL.
Untuk menanyakan data dalam pangkalan data MongoDB, kita perlu terlebih dahulu memahami kaedah find() dalam MongoDB. Kaedah find() digunakan untuk menanyakan data daripada pangkalan data Sintaks asasnya ialah:
db.collection.find(query, projection)
Antaranya, db.collection mewakili koleksi sasaran pertanyaan, pertanyaan mewakili keadaan pertanyaan dan unjuran. mewakili medan yang akan dikembalikan. Jika keadaan pertanyaan kosong, semua data dalam koleksi akan dikembalikan. Berikut ialah kod sampel yang menanyakan semua data dalam koleksi ujian:
var db = mongoose.connection; db.on('error', console.error.bind(console, 'connection error:')); db.once('open', function() { console.log("MongoDB连接成功!"); var kittySchema = new mongoose.Schema({ name: String }); var Kitten = mongoose.model('Kitten', kittySchema); Kitten.find(function (err, kittens) { if (err) console.error(err); console.log(kittens); }); });
Dalam kod di atas, kami mentakrifkan objek skema bernama kittySchema untuk menentukan struktur dokumen ujian koleksi MongoDB. Kemudian, kami menggunakan kaedah mongoose.model() untuk mencipta model Kitten untuk mengendalikan koleksi dalam MongoDB. Akhir sekali, gunakan kaedah Kitten.find() untuk menanyakan semua data dalam koleksi ujian Jika pertanyaan berjaya, hasil yang sepadan boleh dikembalikan.
4. Ringkasan
Untuk pembangunan aplikasi Node.js, operasi yang kerap pada pangkalan data diperlukan. Apabila menanyakan pangkalan data, kami boleh menggunakan pakej dan modul pemacu Node.js untuk menjadikan pertanyaan data lebih cekap, pantas dan tepat. Artikel ini memperkenalkan kaedah menanyakan pangkalan data MySQL dan MongoDB dengan Node.js saya harap ia akan membantu kerja pembangunan anda.
Atas ialah kandungan terperinci Terokai cara menggunakan Node.js untuk menanyakan pangkalan data. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!