インターネットの発展に伴い、Web アプリケーションの需要が徐々に増加し、開発技術の継続的な革新も促進されています。 Node.js は Chrome V8 エンジンをベースにした JavaScript ランタイムで、イベント駆動型のノンブロッキング I/O テクノロジであり、サーバーサイド JavaScript 開発をサポートします。 Node.js では、クエリ、特に MongoDB、MySQL などのデータベースに関連するクエリが一般的な操作です。この記事では、Node.js のクエリ テクノロジを紹介します。
Node.js のデータベース クエリ
Node.js は、SQLite、MySQL、PostgreSQL、MongoDB などの多くのデータベース モジュールを通じて、さまざまなデータベースとの対話を実装します。モジュールが異なれば必要なクエリ方法も異なりますが、共通の目標はデータベースから必要なデータを取得することです。
ここでは、一般的なクエリ操作をいくつか示します。
挿入は、データベースの中央にデータを追加するために使用される一般的なデータベース操作です。 Node.js はさまざまなデータベースへのデータ挿入をサポートしており、複数の挿入方法があります。 MongoDB を例に挙げると、挿入は次の方法で実行できます:
const MongoClient = require('mongodb').MongoClient;
const url = 'mongodb://localhost:27017';
const dbName = 'nodejsDB';
MongoClient.connect(url, { useNewUrlParser: true }, (err, client) => {
if (err) throw err;
const db = client.db(dbName);
const newDocument = { 名前: 'トム'、年齢: 30 };
db.collection('users').insertOne( newDocument, ( err, result) => {
if (err) throw err; console.log('Document inserted!'); client.close();
});
});
上記のコードは、MongoDB クライアント ドライバーを使用してデータベース接続を確立し、名前を挿入します。ユーザー コレクションに追加 トム、30 歳のドキュメント。ここでは、単一のドキュメントを挿入するために MongoDB の insertOne() メソッドが使用されていることに注意してください。
データの更新も、一般的なデータベース操作です。 Node.js では、updateOne() メソッドを使用して、コレクション内の 1 つのドキュメントを更新できます。例:
const MongoClient = require('mongodb').MongoClient;
const url = ' mongodb:// localhost:27017';
const dbName = 'nodejsDB';
MongoClient.connect(url, { useNewUrlParser: true }, (err, client) => {
if (err) エラーをスローします;
const db = client.db(dbName);
const filter = { name: 'Tom' };
const update = { $set: {年齢: 31 } };
db.collection('users').updateOne(filter, update, (err, result) => {
if (err) throw err; console.log('Document updated!'); client.close();
});
} );
このコードは、updateOne() メソッドを使用して、Tom という名前のドキュメントの年齢を 31 に更新します。 $set 演算子は、ドキュメント内の既存のフィールドの値に新しい値を設定します。
データのクエリは、データベースからデータを取得するプロセスです。 Node.js では、find()、findOne()、count() などの複数のメソッドを使用してデータベースからデータを取得できます。たとえば、次のコードでは、find() メソッドを使用して、20 歳を超えるすべてのドキュメントをクエリします。
const MongoClient = require('mongodb').MongoClient;
const url = 'mongodb: //localhost:27017' ;
const dbName = 'nodejsDB';
MongoClient.connect(url, { useNewUrlParser: true }, (err, client) => {
if (err ) エラーをスローします;
const db = client.db(dbName);
const query = { age: { $gt: 20 } };
db.collection( 'users').find (query).toArray((err, result) => {
if (err) throw err; console.log(result); client.close();
});
});
上記のコードは find( ) MongoDB のメソッドを使用して、20 歳を超えるすべてのドキュメントをクエリします。ここでは、結果を配列に変換するために toArray() メソッドが使用されています。
データの削除は、指定されたデータをデータベースから削除するプロセスです。 Node.js では、remove() メソッドを使用して 1 つ以上のドキュメントを削除できます。たとえば、次のコードは Tom という名前のドキュメントを削除します:
const MongoClient = require('mongodb').MongoClient;
const url = 'mongodb://localhost:27017';
const dbName = 'nodejsDB';
MongoClient.connect(url, { useNewUrlParser: true }, (err, client) => {
if (err) throw err;
const db = client.db(dbName);
const query = { name: 'Tom' };
db.collection('users').deleteOne(query, (err, result) = > {
if (err) throw err; console.log('Document deleted!'); client.close();
});
});
上記のコードは、deleteOne() メソッドを使用して Tom という名前のドキュメントを削除します。
概要
この記事では、Node.js のクエリ テクノロジを紹介します。どのデータベース モジュールを使用する場合でも、クエリは避けられない操作です。実際の開発では、さまざまなニーズに応じてさまざまなクエリメソッドを選択する必要があります。この記事では、MongoDB での一般的な挿入、更新、クエリ、削除の操作メソッドを紹介します。 Node.js はシングルスレッド モデルを使用しており、クエリによってイベント ループがブロックされる可能性があることに注意してください。したがって、アプリケーション全体のパフォーマンスへの影響を避けるために、ノンブロッキング クエリには非同期コールバック メソッドを使用する必要があります。
以上がノードjsクエリの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。