Dengan perkembangan pesat Internet, semakin banyak laman web dan aplikasi dibangunkan, dan jumlah data menjadi lebih besar dan lebih besar, jadi pemprosesan dan pengurusan data menjadi lebih penting. Antaranya, paging ialah kaedah pertanyaan data yang sangat biasa, yang boleh memaparkan sejumlah besar data dengan mudah dan memberikan pengguna pengalaman pengguna yang lebih baik. Dalam pembangunan, kami biasanya menggunakan pangkalan data MySQL untuk menyimpan data Artikel ini memperkenalkan cara menggunakan Node.js untuk merangkum MySQL untuk melaksanakan fungsi pertanyaan paging.
Pertama, kita perlu mencipta jadual dalam MySQL untuk menyimpan data yang kita perlukan. Artikel ini mengambil jadual "pengguna" sebagai contoh, yang mengandungi tiga medan: id, nama dan umur. Struktur jadual dan data khusus adalah seperti berikut:
CREATE TABLE users ( id INT(11) NOT NULL AUTO_INCREMENT, name VARCHAR(20) NOT NULL, age INT(11) NOT NULL, PRIMARY KEY (id) ); INSERT INTO users (name, age) VALUES ('小明', 18); INSERT INTO users (name, age) VALUES ('小红', 20); INSERT INTO users (name, age) VALUES ('小华', 22); INSERT INTO users (name, age) VALUES ('小张', 25); INSERT INTO users (name, age) VALUES ('小李', 28); INSERT INTO users (name, age) VALUES ('小刘', 30);
Seterusnya, kita perlu memasang pangkalan data MySQL dan modul mysql yang sepadan. Ia boleh dipasang melalui arahan berikut:
npm install mysql
Sebelum menggunakan modul mysql, kita perlu menyambung ke pangkalan data MySQL melalui kod berikut:
const mysql = require('mysql'); const connection = mysql.createConnection({ host: 'localhost', user: 'root', password: 'password', database: 'test' }); connection.connect();
Di sini, kami menetapkan nama pangkalan data yang disambungkan kepada "ujian", anda perlu menukarnya mengikut situasi sebenar anda.
Seterusnya, kami merangkum fungsi pertanyaan halaman untuk menanyakan bilangan halaman data yang ditentukan. Nama fungsi ialah "queryByPage", dan parameter yang dihantar ialah:
Kod pelaksanaan fungsi adalah seperti berikut:
function queryByPage(tableName, pageNum, pageSize, callback) { const start = (pageNum - 1) * pageSize; const sql = `SELECT * FROM ${tableName} ORDER BY id DESC LIMIT ${start}, ${pageSize}`; connection.query(sql, (err, results) => { if (err) { return callback(err, null); } const countSql = `SELECT count(*) as count FROM ${tableName}`; connection.query(countSql, (err, count) => { if (err) { return callback(err, null); } const totalCount = count[0].count; const totalPage = Math.ceil(totalCount / pageSize); return callback(null, { pageNum, pageSize, totalCount, totalPage, data: results }); }); }); }
Kod di atas melaksanakan Beberapa fungsi berikut:
Akhir sekali, kita boleh memanggil fungsi pertanyaan paging terkapsul dalam aplikasi Node.js , dan memaparkan hasil pertanyaan seperti yang diperlukan.
queryByPage('users', 1, 2, (err, result) => { if (err) { console.error(err.message); return; } console.log(result); });
Kod di atas akan menanyakan halaman pertama data dalam jadual "pengguna", memaparkan 2 rekod pada setiap halaman dan mengeluarkan hasil pertanyaan ke konsol.
Artikel ini memperkenalkan cara menggunakan Node.js untuk merangkum MySQL bagi melaksanakan fungsi pertanyaan halaman. Dengan mencipta jadual pangkalan data, memasang modul mysql dan merangkum fungsi pertanyaan, kami boleh dengan mudah menanyakan data bilangan halaman tertentu dan memaparkannya dalam aplikasi. Sudah tentu, dalam aplikasi sebenar, kita juga perlu menambah baik kod mengikut situasi sebenar, dan melakukan pengendalian ralat dan pengendalian pengecualian.
Atas ialah kandungan terperinci nodejs merangkum mysql untuk melaksanakan paging. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!