Skip to content
Guides Zilliz Cloud Milvus Attu

Database Operations

Database APIs manage Milvus databases and database-level properties. Most collection and data APIs accept db_name; you can also set the active database with client.use.

Create a database.

createDatabase(data: CreateDatabaseRequest): Promise<ResStatus>

Parameters:

  • db_name: Database name.
  • properties?: Database properties.
  • timeout?: Request timeout in milliseconds.

Example:

await client.createDatabase({
db_name: 'analytics',
properties: {
owner: 'recommendation-team',
},
});

List databases.

listDatabases(data?: ListDatabasesRequest): Promise<ListDatabasesResponse>

Parameters:

  • timeout?: Request timeout in milliseconds.

Response:

interface ListDatabasesResponse {
status: ResStatus;
db_names: string[];
db_ids: string[];
created_timestamp: string[];
}

Example:

const databases = await client.listDatabases();
console.log(databases.db_names);

Describe database metadata and properties.

describeDatabase(data: DescribeDatabaseRequest): Promise<DescribeDatabaseResponse>

Parameters:

  • db_name: Database name.
  • timeout?: Request timeout in milliseconds.

Response:

interface DescribeDatabaseResponse {
status: ResStatus;
db_name: string;
dbID: number;
created_timestamp: number;
properties: KeyValuePair[];
}

Example:

const db = await client.describeDatabase({ db_name: 'analytics' });

Modify database properties.

alterDatabaseProperties(data: AlterDatabaseRequest): Promise<ResStatus>
alterDatabase(data: AlterDatabaseRequest): Promise<ResStatus> // alias

Parameters:

  • db_name: Database name.
  • db_id?: Database ID.
  • properties: Properties to set.
  • delete_keys?: Property keys to delete.
  • timeout?: Request timeout in milliseconds.

Example:

await client.alterDatabaseProperties({
db_name: 'analytics',
properties: {
description: 'Analytics workloads',
},
});

Remove database properties by key.

dropDatabaseProperties(data: DropDatabasePropertiesRequest): Promise<ResStatus>

Parameters:

  • db_name: Database name.
  • properties: Property names to remove.
  • timeout?: Request timeout in milliseconds.

Example:

await client.dropDatabaseProperties({
db_name: 'analytics',
properties: ['description'],
});

Drop a database.

dropDatabase(data: DropDatabasesRequest): Promise<ResStatus>

Parameters:

  • db_name: Database name.
  • timeout?: Request timeout in milliseconds.

Example:

await client.dropDatabase({ db_name: 'analytics' });
await client.createDatabase({ db_name: 'analytics' });
await client.use({ db_name: 'analytics' });
await client.createCollection({
collection_name: 'events',
dimension: 128,
});

Alternatively pass db_name per request:

await client.showCollections({ db_name: 'analytics' });