Databases class
新しいデータベースを作成し、すべてのデータベースの読み取り/クエリを実行するための操作
既存のデータベースの読み取りまたは削除については、「Database」を参照してください。client.database(id)
を使用します。
注: これらすべての操作は、固定予算に対して呼び出しを行います。
これらの呼び出しがアプリケーションと共にサブリニアにスケーリングされるようにシステムを設計する必要があります。
たとえば、1 回の databases.readAll()
呼び出しの前に item.read()
を呼び出して、データベースが存在することを確認しないでください。これは、アプリケーションの起動時に 1 回行います。
プロパティ
client |
メソッド
create(Database |
データベースを作成するための要求を送信します。 データベースは、ユーザー、アクセス許可、およびコンテナーのセットを管理します。 各 Azure Cosmos DB データベース アカウントは、複数の独立した名前付きデータベースをサポートでき、データベースはデータの論理コンテナーです。 各データベースは 1 つ以上のコンテナーで構成され、各コンテナーには 1 つ以上のドキュメントが含まれます。 データベースは管理リソースであるため、ユーザー API を使用してアクションにアクセスして正常に完了するには、サービス マスター キーが必要です。 例
|
create |
データベースが存在するかどうかを確認し、存在しない場合は作成します。
これにより、 データベースは、ユーザー、アクセス許可、およびコンテナーのセットを管理します。 各 Azure Cosmos DB データベース アカウントは、複数の独立した名前付きデータベースをサポートでき、データベースはデータの論理コンテナーです。 各データベースは 1 つ以上のコンテナーで構成され、各コンテナーには 1 つ以上のドキュメントが含まれます。 データベースは管理リソースであるため、ユーザー API を使用してアクションにアクセスして正常に完了するには、サービス マスター キーが必要です。 例
|
query(string | Sql |
すべてのデータベースに対してクエリを実行します。 例 すべてのデータベースを配列に読み取る。
|
query<T>(string | Sql |
すべてのデータベースに対してクエリを実行します。 例 すべてのデータベースを配列に読み取る。
|
read |
すべてのデータベースを読み取ります。 例 すべてのデータベースを配列に読み取る。
|
プロパティの詳細
client
メソッドの詳細
create(DatabaseRequest, RequestOptions)
データベースを作成するための要求を送信します。
データベースは、ユーザー、アクセス許可、およびコンテナーのセットを管理します。 各 Azure Cosmos DB データベース アカウントは、複数の独立した名前付きデータベースをサポートでき、データベースはデータの論理コンテナーです。
各データベースは 1 つ以上のコンテナーで構成され、各コンテナーには 1 つ以上のドキュメントが含まれます。 データベースは管理リソースであるため、ユーザー API を使用してアクションにアクセスして正常に完了するには、サービス マスター キーが必要です。
例
import { CosmosClient } from "@azure/cosmos";
const endpoint = "https://your-account.documents.azure.com";
const key = "<database account masterkey>";
const client = new CosmosClient({ endpoint, key });
const { resource: databaseDefinition, database } = await client.databases.create({
id: "<name here>",
});
function create(body: DatabaseRequest, options?: RequestOptions): Promise<DatabaseResponse>
パラメーター
- body
- DatabaseRequest
作成するデータベース を表す DatabaseDefinition。
- options
- RequestOptions
応答ページ サイズ、継続トークンなどのオプションを設定するために使用します。
戻り値
Promise<DatabaseResponse>
createIfNotExists(DatabaseRequest, RequestOptions)
データベースが存在するかどうかを確認し、存在しない場合は作成します。
これにより、body
内の ID に基づいて読み取り操作が行われます。見つからない場合は作成操作です。
データベースは、ユーザー、アクセス許可、およびコンテナーのセットを管理します。 各 Azure Cosmos DB データベース アカウントは、複数の独立した名前付きデータベースをサポートでき、データベースはデータの論理コンテナーです。
各データベースは 1 つ以上のコンテナーで構成され、各コンテナーには 1 つ以上のドキュメントが含まれます。 データベースは管理リソースであるため、ユーザー API を使用してアクションにアクセスして正常に完了するには、サービス マスター キーが必要です。
例
import { CosmosClient } from "@azure/cosmos";
const endpoint = "https://your-account.documents.azure.com";
const key = "<database account masterkey>";
const client = new CosmosClient({ endpoint, key });
const { database } = await client.databases.createIfNotExists({ id: "Test Database" });
function createIfNotExists(body: DatabaseRequest, options?: RequestOptions): Promise<DatabaseResponse>
パラメーター
- body
- DatabaseRequest
作成するデータベース を表す DatabaseDefinition。
- options
- RequestOptions
要求の追加オプション
戻り値
Promise<DatabaseResponse>
query(string | SqlQuerySpec, FeedOptions)
すべてのデータベースに対してクエリを実行します。
例
すべてのデータベースを配列に読み取る。
import { CosmosClient, SqlQuerySpec } from "@azure/cosmos";
const endpoint = "https://your-account.documents.azure.com";
const key = "<database account masterkey>";
const client = new CosmosClient({ endpoint, key });
const querySpec: SqlQuerySpec = {
query: `SELECT * FROM root r WHERE r.id = @database`,
parameters: [{ name: "@database", value: "Todo" }],
};
const { resources: databaseList } = await client.databases.query(querySpec).fetchAll();
function query(query: string | SqlQuerySpec, options?: FeedOptions): QueryIterator<any>
パラメーター
- query
-
string | SqlQuerySpec
操作のクエリ構成。 クエリ 構成する方法の詳細については、SqlQuerySpec を参照してください。
- options
- FeedOptions
応答ページ サイズ、継続トークンなどのオプションを設定するために使用します。
戻り値
QueryIterator<any>
QueryIterator 配列内のすべてのデータベースを返したり、一度に 1 つずつ反復処理したりできます。
query<T>(string | SqlQuerySpec, FeedOptions)
すべてのデータベースに対してクエリを実行します。
例
すべてのデータベースを配列に読み取る。
import { CosmosClient, SqlQuerySpec } from "@azure/cosmos";
const endpoint = "https://your-account.documents.azure.com";
const key = "<database account masterkey>";
const client = new CosmosClient({ endpoint, key });
const querySpec: SqlQuerySpec = {
query: `SELECT * FROM root r WHERE r.id = @database`,
parameters: [{ name: "@database", value: "Todo" }],
};
const { resources: databaseList } = await client.databases.query(querySpec).fetchAll();
function query<T>(query: string | SqlQuerySpec, options?: FeedOptions): QueryIterator<T>
パラメーター
- query
-
string | SqlQuerySpec
操作のクエリ構成。 クエリ 構成する方法の詳細については、SqlQuerySpec を参照してください。
- options
- FeedOptions
応答ページ サイズ、継続トークンなどのオプションを設定するために使用します。
戻り値
QueryIterator 配列内のすべてのデータベースを返したり、一度に 1 つずつ反復処理したりできます。
readAll(FeedOptions)
すべてのデータベースを読み取ります。
例
すべてのデータベースを配列に読み取る。
import { CosmosClient } from "@azure/cosmos";
const endpoint = "https://your-account.documents.azure.com";
const key = "<database account masterkey>";
const client = new CosmosClient({ endpoint, key });
const { resources: databaseList } = await client.databases.readAll().fetchAll();
function readAll(options?: FeedOptions): QueryIterator<DatabaseDefinition & Resource>
パラメーター
- options
- FeedOptions
応答ページ サイズ、継続トークンなどのオプションを設定するために使用します。
戻り値
QueryIterator 配列内のすべてのデータベースを返したり、一度に 1 つずつ反復処理したりできます。