Bagikan melalui


Mengelola koleksi di Azure Cosmos DB untuk MongoDB menggunakan JavaScript

BERLAKU UNTUK: MongoDB

Kelola koleksi MongoDB Anda yang disimpan di Azure Cosmos DB dengan driver klien MongoDB asli.

Catatan

Contoh cuplikan kode tersedia di GitHub sebagai proyek JavaScript.

API untuk dokumentasi | referensi MongoDB Paket MongoDB (npm)

Memberi nama koleksi

Di Azure Cosmos DB, koleksi dianalogikan dengan tabel dalam database relasional. Saat membuat koleksi, nama koleksi membentuk segmen URI yang digunakan untuk mengakses sumber daya koleksi serta dokumen turunan apa pun.

Mendapatkan instans koleksi

Gunakan instans kelas Koleksi untuk mengakses koleksi di server.

Cuplikan kode berikut mengasumsikan Anda telah membuat koneksi klien dan menutup koneksi klien Anda setelah cuplikan kode ini.

Membuat kumpulan

Untuk membuat koleksi, sisipkan dokumen ke dalam koleksi.

// get database client for database 
// if database or collection doesn't exist, it is created
// when the doc is inserted

// insert doc
const doc = { name: `product-${random}` };
const insertOneResult = await client.db("adventureworks").collection("products").insertOne(doc);
console.log(`Insert 1 - ${JSON.stringify(insertOneResult)}`);

// insert docs
const docs = [
    { name: `product-${random}` },
    { name: `product-${random}` }
];
const insertManyResult = await client.db("adventureworks").collection("products").insertMany(docs);
console.log(`Insert many ${JSON.stringify(insertManyResult)}`);

Menghilangkan koleksi

Hilangkan koleksi dari database untuk menghapusnya secara permanen. Namun, operasi sisipkan atau perbarui berikutnya yang mengakses koleksi tersebut akan membuat koleksi baru dengan nama tersebut.

// Drop the collection from the database, removing it permanently. 
// New accesses will create a new collection.

// drop from db instance
const dropCollection1 = await client.db("adventureworks").dropCollection("products");
console.log(`Collection dropped:\t${JSON.stringify(dropCollection1)}`);

// drop from collection instance
const dropCollection2 = await client.db("adventureworks").collection('products-2').drop();
console.log(`Collection dropped:\t${JSON.stringify(dropCollection2)}`);

Cuplikan kode sebelumnya menampilkan contoh output konsol berikut:

Collection dropped:     true
Collection dropped:     true
done

Mendapatkan indeks koleksi

Indeks digunakan oleh mesin kueri MongoDB untuk meningkatkan performa ke kueri database.

// Get all indexes in collection
const collectionInstance = await client.db("adventureworks").collection('products')
const indexes = await collectionInstance.indexes();
console.log(`Indexes on collection:\n${Object.keys(indexes).map(key => `\t${key}: ${JSON.stringify(indexes[key])}\n`)}`);

Cuplikan kode sebelumnya menampilkan contoh output konsol berikut:

Indexes on collection:
        0: {"v":1,"key":{"_id":1},"name":"_id_","ns":"adventureworks.products"}
,       1: {"v":1,"key":{"name":1},"name":"name_1","ns":"adventureworks.products"}

done

Lihat juga