Create a user-defined type (UDT) (TypeScript)
Creates a user-defined type (UDT) to use in a table.
|
Ready to write code? See the examples for this method to get started. If you are new to the Data API, check out the quickstart. |
Result
Creates a user-defined type with the specified definition.
Returns a promise that resolves once the operation completes.
Parameters
Use the createType method, which belongs to the Db class.
Method signature
async createType(
name: string,
options: {
definition: CreateTypeDefinition,
ifNotExists?: boolean,
keyspace?: string,
timeout?: number | TimeoutDescriptor,
}
): void
| Name | Type | Summary |
|---|---|---|
|
|
The name of the new user-defined type. The name must be unique within the keyspace. |
|
|
The options for this operation.
See Properties of |
| Name | Type | Summary |
|---|---|---|
|
|
The definition for the new user-defined type. The definition describes the name and data type of each field in the user-defined type. You can use any supported data type, except for maps, lists, sets, or other user-defined types. See the examples for usage. |
|
|
Optional. Whether the command should silently succeed even if a user-defined type with the given name already exists in the keyspace and no new type was created. This option only checks type names. It does not check type definitions. Default: false |
|
|
Optional. The keyspace in which to create the user-defined type. Default: The working keyspace for the database.
This is |
|
|
Optional. A timeout to impose on the underlying API request. |
Examples
The following examples demonstrate how to create a user-defined type.
Create a user-defined type
import { DataAPIClient } from "@datastax/astra-db-ts";
// Get a database
const client = new DataAPIClient();
const database = client.db("API_ENDPOINT", {
token: "APPLICATION_TOKEN",
});
// Drop a user-defined type
(async function () {
await database.createType("member", {
definition: {
fields: {
name: "text",
is_active: "boolean",
date_joined: "date",
},
},
});
})();
Create a user-defined type only if the type does not exist
Use this option to silently do nothing if a user-defined type with the specified name already exists.
This option only checks type names. It doesn’t check the definition of any existing types.
import { DataAPIClient } from "@datastax/astra-db-ts";
// Get a database
const client = new DataAPIClient();
const database = client.db("API_ENDPOINT", {
token: "APPLICATION_TOKEN",
});
// Drop a user-defined type
(async function () {
await database.createType("member", {
definition: {
fields: {
name: "text",
is_active: "boolean",
date_joined: "date",
},
},
ifNotExists: true,
});
})();
Client reference
For more information, see the client reference.