nodejsはmysqlをカプセル化してページングを実装します
インターネットの急速な発展に伴い、開発される Web サイトやアプリケーションの数が増え、データ量もますます増大するため、データの処理と管理の重要性がますます高まっています。その中でも、ページングは非常に一般的なデータ クエリ方法であり、大量のデータを簡単に表示し、ユーザーに優れたユーザー エクスペリエンスを提供できます。開発では通常、MySQL データベースを使用してデータを保存しますが、この記事では、Node.js を使用して MySQL をカプセル化し、ページング クエリ機能を実装する方法を紹介します。
- データベース テーブルの作成
まず、必要なデータを保存するためのテーブルを MySQL に作成する必要があります。この記事では、id、name、age の 3 つのフィールドが含まれる「users」テーブルを例に挙げます。具体的なテーブル構造とデータは次のとおりです。
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);
- MySQL と mysql モジュールのインストール
次に、MySQL データベースと対応する mysql モジュールをインストールする必要があります。次のコマンドを使用してインストールできます:
npm install mysql
- ページング クエリの実装
mysql モジュールを使用する前に、次のコードを使用して MySQL データベースに接続する必要があります。
const mysql = require('mysql'); const connection = mysql.createConnection({ host: 'localhost', user: 'root', password: 'password', database: 'test' }); connection.connect();
ここでは、接続するデータベース名を「test」に設定していますが、実際の状況に応じて変更する必要があります。
次に、指定されたページ数のデータをクエリするページング クエリ関数をカプセル化します。関数名は「queryByPage」で、渡されるパラメータは次のとおりです:
- tableName: クエリ対象のデータ テーブルの名前
- pageNum: クエリ対象のページ数
- pageSize: 各ページに表示されるデータの数
- callback: クエリ結果を受け取るために使用されるコールバック関数
関数の実装コードは次のとおりです。 ##
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 }); }); }); }
- 渡されたページ数と各ページに表示されるデータの数に基づいてクエリ データの開始位置を計算しますMySQL クエリ ステートメントを実行してページング クエリを実装し、クエリ結果を取得します。MySQL クエリ ステートメントを実行して、データの合計量を取得します。合計に基づいて合計ページ数を計算します。データ量と各ページに表示されるデータ数クエリ結果とページングのページング情報はコールバック用のオブジェクトにカプセル化されます
- ページング クエリ関数を呼び出します
queryByPage('users', 1, 2, (err, result) => { if (err) { console.error(err.message); return; } console.log(result); });
- 概要
以上がnodejsはmysqlをカプセル化してページングを実装しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











この記事では、functionコンポーネントでのデータフェッチやDOM操作などの副作用を管理するためのフックであるReactの使用Effectについて説明します。メモリリークなどの問題を防ぐための使用、一般的な副作用、およびクリーンアップについて説明します。

怠zyな読み込みは、必要になるまでコンテンツの読み込みを遅延させ、初期負荷時間とサーバーの負荷を削減することにより、Webパフォーマンスとユーザーエクスペリエンスを改善します。

JavaScriptの高次関数は、抽象化、共通パターン、および最適化技術を通じて、コードの簡潔さ、再利用性、モジュール性、およびパフォーマンスを強化します。

この記事では、JavaScriptのカレーについて説明します。これは、マルチアーグメント関数を単一argument関数シーケンスに変換する手法です。 Curryingの実装、部分的なアプリケーションなどの利点、実用的な用途、コード読み取りの強化を調査します

この記事では、Virtual DOMツリーを比較してDOMを効率的に更新するReactの調整アルゴリズムについて説明します。パフォーマンスの利点、最適化技術、ユーザーエクスペリエンスへの影響について説明します。

記事では、PreventDefault()メソッドを使用して、イベントハンドラーのデフォルト動作の防止、ユーザーエクスペリエンスの強化などの利点、およびアクセシビリティの懸念などの潜在的な問題について説明します。

この記事では、ReactのUseContextを説明しています。これにより、小道具掘削を避けることで国家管理を簡素化します。再レンダーの削減により、集中状態やパフォーマンスの改善などの利点について説明します。

この記事では、予測可能性、パフォーマンス、ユースケースなどの側面に焦点を当てた、Reactの制御されていないコンポーネントと制御されていないコンポーネントの利点と欠点について説明します。それらを選択する際に考慮することを要因についてアドバイスします。
