ホームページ >ウェブフロントエンド >jsチュートリアル >Nodejsを使用したmongodbデータベースへの接続の実装
この記事では、主に Nodejs を使用して mongodb データベースに接続する実装コードを紹介します。必要な方は参考にしてください。
mongodb 公式の例からの、nodejs を使用した接続の簡単な例です
1. パッケージを作成します。 .json
まず、プロジェクトディレクトリ connect-mongodb を作成し、それを現在のディレクトリとして入力します
mkdir connect-mongodb cd connect-mongodb
npm init
命令创建package.json
npm init
次に、mongodb
のnodejsバージョンのドライバーをインストールしますリーリーmon godb driver パッケージは現在のディレクトリのnode_modulesにインストールされます
2. MongoDBサーバーを起動します
MongoDBをインストールし、MongoDBデータベースサービスを起動します。以前の記事、またはMongoDB の公式ドキュメント
3. MongoDB に接続します
app.js ファイルを作成し、サーバー アドレス 192.168.0.243 および mongodb ポート 27017 上の myNewDatabase という名前のデータベースに接続するための次のコードを追加します
npm install mongodb --save
コマンドラインに次のコマンドを入力してアプリを実行します。js
var MongoClient = require('mongodb').MongoClient, assert = require('assert'); // Connection URL var url = 'mongodb://192.168.0.243:27017/myNewDatabase'; MongoClient.connect(url,function(err,db){ assert.equal(null,err); console.log("Connection successfully to server"); db.close(); });
4. ドキュメントを挿入します
app.js に次のコードを追加し、insertMany メソッドを使用して 3 つのドキュメントを追加します。ドキュメントコレクション
node app.js
insert コマンドは次のプロパティを含むオブジェクトを返します:
result MongoDB によって返されるドキュメント結果
ops _id フィールドが追加されたドキュメント
connection 接続挿入操作の実行に使用されます
app.js で以下を更新します コードは insertDocuments メソッドを呼び出します
var insertDocuments = function(db, callback){ // get ths documents collection var collection = db.collection('documents'); // insert some documents collection.insertMany([ {a:1},{a:2},{a:3} ],function(err,result){ assert.equal(err,null); assert.equal(3,result.result.n); assert.equal(3,result.ops.length); console.log("Inserted 3 documents into the collection"); callback(result); }); };
ノード app.js を使用してコマンドラインで実行します
5.
findDocuments関数を追加しますvar MongoClient = require('mongodb').MongoClient , assert = require('assert'); // Connection URL var url = 'mongodb://localhost:27017/myproject'; // Use connect method to connect to the server MongoClient.connect(url, function(err, db) { assert.equal(null, err); console.log("Connected successfully to server"); insertDocuments(db, function() { db.close(); }); });findDocuments この関数はすべてのドキュメントのコレクションをクエリします。この関数をMongoClient.connect
var findDocuments = function(db,callback){ // get the documents collection var collection = db.collection('documents'); // find some documents collection.find({}).toArray(function(err,docs){ assert.equal(err,null); console.log("Found the following records"); console.log(docs); callback(docs); }); };
6のコールバック関数に追加します6。 documentQuery 'a': 3 ドキュメント
var MongoClient = require('mongodb').MongoClient , assert = require('assert'); // Connection URL var url = 'mongodb://localhost:27017/myproject'; // Use connect method to connect to the server MongoClient.connect(url, function(err, db) { assert.equal(null, err); console.log("Connected correctly to server"); insertDocuments(db, function() { findDocuments(db, function() { db.close(); }); }); });
7. ドキュメントを更新します
var findDocuments = function(db, callback) { // Get the documents collection var collection = db.collection('documents'); // Find some documents collection.find({'a': 3}).toArray(function(err, docs) { assert.equal(err, null); console.log("Found the following records"); console.log(docs); callback(docs); }); }
updateDocument メソッドは、条件 a が 2 を満たす最初のドキュメントを更新します。 、 b 属性を追加し、それを 1 に設定します。
MongoClient.connectメソッドのコールバックにupdateDocumentメソッドを追加します
var updateDocument = function(db,callback){ // get the documents collection var collection = db.collection('documents'); // update document where a is 2, set b equal to 1 collection.updateOne({a:2},{ $set:{b:1} },function(err,result){ assert.equal(err,null); assert.equal(1,result.result.n); console.log("updated the document with the field a equal to 2"); callback(result); }); };
8. ドキュメントを削除します
MongoClient.connect(url,function(err,db){ assert.equal(null,err); console.log("Connection successfully to server"); insertDocuments(db,function(){ updateDocument(db,function(){ db.close(); }); }); });
app.js
に追加します。りー9. インデックスを作成する インデックスを使用すると、アプリケーションのパフォーマンスが向上します。コードの下に、「a」属性にインデックスを追加します
var removeDocument = function(db,callback){ // get the documents collection var collection = db.collection('documents'); // remove some documents collection.deleteOne({a:3},function(err,result){ assert.equal(err,null); assert.equal(1,result.result.n); console.log("removed the document with the field a equal to 3"); callback(result); }); };
app.jsを更新します
var MongoClient = require('mongodb').MongoClient , assert = require('assert'); // Connection URL var url = 'mongodb://localhost:27017/myproject'; // Use connect method to connect to the server MongoClient.connect(url, function(err, db) { assert.equal(null, err); console.log("Connected successfully to server"); insertDocuments(db, function() { updateDocument(db, function() { removeDocument(db, function() { db.close(); }); }); }); });
上記はこの記事の全内容です。皆さんの学習に役立つことを願っています。関連コンテンツの詳細については、お問い合わせください。PHP 中国語 Web サイトをフォローしてください。
関連する推奨事項:
node-mysqlでのSQLインジェクションを防ぐ方法NodeJsフォームデータ形式でファイルを転送する方法以上がNodejsを使用したmongodbデータベースへの接続の実装の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。