Drop a user-defined type (UDT)
Tables with the Data API are currently in public preview. Development is ongoing, and the features and functionality are subject to change. Astra DB Serverless, and the use of such, is subject to the DataStax Preview Terms. |
Drops a user-defined type (UDT) from a keyspace.
You can’t drop a user-defined type that is currently used by a table. You must first use drop the columns that use the user-defined type.
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
-
Python
-
TypeScript
-
Java
-
curl
Drops the specified user-defined type.
Does not return anything.
Drops the specified user-defined type.
Returns a promise that resolves once the operation completes.
Drops the specified user-defined type.
Does not return anything.
Drops the specified user-defined type.
If the command succeeds, the response indicates the success.
Example response:
{
"status": {
"ok": 1
}
}
Parameters
-
Python
-
TypeScript
-
Java
-
curl
Use the drop_type
method, which belongs to the astrapy.Database
class.
Method signature
drop_type(
name: str,
*,
keyspace: str,
if_exists: bool,
table_admin_timeout_ms: int,
request_timeout_ms: int,
timeout_ms: int,
) -> None
Name | Type | Summary |
---|---|---|
|
|
The name of the user-defined type to drop. |
|
|
Optional. The keyspace containing the user-defined type. Default: The database’s working keyspace. |
|
|
Optional. Whether the command should silently succeed even if a user-defined type with the given name does not exist in the keyspace and a user-defined type wasn’t dropped. Default: false |
|
|
A timeout, in milliseconds, for the underlying schema-changing HTTP request.
If not provided, the |
Use the dropType
method, which belongs to the Db
class.
Method signature
async dropType(
name: string,
options?: {
ifExists?: boolean,
timeout?: number | TimeoutDescriptor,
keyspace?: string,
}
): void
Name | Type | Summary |
---|---|---|
|
|
The name of the user-defined type to drop. |
|
|
Optional.
The options for this operation.
See Properties of |
Name | Type | Summary |
---|---|---|
|
|
Optional. Whether the command should silently succeed even if a user-defined type with the given name does not exist in the keyspace and a user-defined type wasn’t dropped. Default: false |
|
|
Optional. The keyspace containing the user-defined type. Default: The database’s working keyspace. |
|
|
Optional. A timeout to impose on the underlying API request. |
Use the dropType
method, which belongs to the com.datastax.astra.client.databases.Database
class.
Method signature
void dropType(String name)
void dropType(
String name,
DropTypeOptions options
)
Name | Type | Summary |
---|---|---|
|
|
The name of the user-defined type to drop. |
|
|
Optional.
The options for this operation. See Methods of the |
Method | Parameters | Summary |
---|---|---|
|
|
Optional. Whether the command should silently succeed even if a user-defined type with the given name does not exist in the keyspace and a user-defined type wasn’t dropped. Default: false |
|
|
Optional. The keyspace containing the user-defined type. Default: The database’s working keyspace. |
Use the dropType
command.
Command signature
curl -sS -L -X POST "API_ENDPOINT/api/json/v1/KEYSPACE_NAME" \
--header "Token: APPLICATION_TOKEN" \
--header "Content-Type: application/json" \
--data '{
"dropType": {
"name": STRING,
"options": {
"ifExists": BOOLEAN
}
}
}'
Name | Type | Summary |
---|---|---|
|
|
The name of the user-defined type to drop. |
|
|
Optional.
The options for this operation. See Properties of |
Name | Type | Summary |
---|---|---|
|
|
Optional. Whether the command should silently succeed even if a user-defined type with the given name does not exist in the keyspace and a user-defined type wasn’t dropped. Default: false |
Examples
The following examples demonstrate how to drop a user-defined type.
Drop a user-defined type
-
Python
-
TypeScript
-
Java
-
curl
from astrapy import DataAPIClient
# Get a database
client = DataAPIClient("APPLICATION_TOKEN")
database = client.get_database("API_ENDPOINT")
# Drop a user-defined type
database.drop_type("UDT_NAME")
import { DataAPIClient } from "@datastax/astra-db-ts";
// Get a database
const client = new DataAPIClient("APPLICATION_TOKEN");
const database = client.db("API_ENDPOINT");
// Drop a user-defined type
(async function () {
await database.dropType("UDT_NAME");
})();
import com.datastax.astra.client.DataAPIClient;
import com.datastax.astra.client.databases.Database;
public class Example {
public static void main(String[] args) {
// Get a database
Database database = new DataAPIClient("APPLICATION_TOKEN").getDatabase("API_ENDPOINT");
// Drop a user-defined type
database.dropType("UDT_NAME");
}
}
curl -sS -L -X POST "API_ENDPOINT/api/json/v1/KEYSPACE_NAME" \
--header "Token: APPLICATION_TOKEN" \
--header "Content-Type: application/json" \
--data '{
"dropType": {
"name": "UDT_NAME",
}
}'
Drop a user-defined type only if the type exists
Use this option to silently do nothing if a user-defined type with the specified name does not exist.
-
Python
-
TypeScript
-
Java
-
curl
from astrapy import DataAPIClient
# Get a database
client = DataAPIClient("APPLICATION_TOKEN")
database = client.get_database("API_ENDPOINT")
# Drop a user-defined type
database.drop_type("UDT_NAME", if_exists=True)
import { DataAPIClient } from "@datastax/astra-db-ts";
// Get a database
const client = new DataAPIClient("APPLICATION_TOKEN");
const database = client.db("API_ENDPOINT");
// Drop a user-defined type
(async function () {
await database.dropType("UDT_NAME", { ifExists: true });
})();
import com.datastax.astra.client.DataAPIClient;
import com.datastax.astra.client.databases.Database;
import com.datastax.astra.client.tables.commands.options.DropTypeOptions;
public class Example {
public static void main(String[] args) {
// Get a database
Database database = new DataAPIClient("APPLICATION_TOKEN").getDatabase("API_ENDPOINT");
// Drop a user-defined type
DropTypeOptions options = new DropTypeOptions().ifExists(true);
database.dropType("UDT_NAME", options);
}
}
curl -sS -L -X POST "API_ENDPOINT/api/json/v1/KEYSPACE_NAME" \
--header "Token: APPLICATION_TOKEN" \
--header "Content-Type: application/json" \
--data '{
"dropType": {
"name": "UDT_NAME",
"options": {
"ifExists": true
}
}
}'
Client reference
-
Python
-
TypeScript
-
Java
-
curl
For more information, see the client reference.
For more information, see the client reference.
For more information, see the client reference.
Client reference documentation is not applicable for HTTP.