Updated on 2024-02-21 GMT+08:00

Modifying Database Attributes

Function

This API is used to modify database attributes.

URI

PUT /v1/{project_id}/instances/{instance_id}/catalogs/{catalog_name}/databases/{database_name}

Table 1 Path Parameters

Parameter

Mandatory

Type

Description

project_id

Yes

String

Project ID. For how to obtain the project ID, see Obtaining a Project ID (lakeformation_04_0026.xml).

instance_id

Yes

String

LakeFormation instance ID. The value is automatically generated when the instance is created, for example, 2180518f-42b8-4947-b20b-adfc53981a25.

catalog_name

Yes

String

Catalog name. The value should contain 1 to 256 characters. Only letters, numbers, and underscores (_) are allowed.

database_name

Yes

String

Database name. The value should contain 1 to 128 characters. Only letters, numbers, hyphens (-), and underscores (_) are allowed.

Request Parameters

Table 2 Request header parameters

Parameter

Mandatory

Type

Description

X-Auth-Token

Yes

Array of strings

Tenant token.

Table 3 Request body parameters

Parameter

Mandatory

Type

Description

database_name

Yes

String

Database name. The value should contain 1 to 128 characters. Only letters, numbers, hyphens (-), and underscores (_) are allowed.

external_database_id

No

String

User database ID, which is specified during creation and cannot be changed.

owner

No

String

Database owner. The value contains 0 to 128 characters.

owner_type

No

String

Owner type. The options are USER (user), GROUP (group), and ROLE (role). The LakeFormation service is divided into phase 1 and phase 2. The response body of phase 1 does not contain this parameter.

Enumeration values:

  • USER
  • ROLE
  • GROUP

owner_auth_source_type

No

String

Owner source. The options are IAM (cloud user), SAML (SAML-based federation), LDAP (lD user), LOCAL (local user), AGENTTENANT (agency), and OTHER (others). The LakeFormation service is divided into phase 1 and phase 2. The response body of phase 1 does not contain this parameter.

Enumeration values:

  • IAM
  • SAML
  • LDAP
  • LOCAL
  • AGENTTENANT
  • OTHER

description

No

String

Database description. Enter a maximum of 4,000 characters when you create the database.

location

No

String

Database directory, for example, obs://location/uri/.

parameters

No

Map<String,String>

Tags.

table_location_list

No

Array of strings

List of table paths.

function_location_list

No

Array of strings

Function path list.

Response Parameters

Status code: 200

Table 4 Response body parameters

Parameter

Type

Description

catalog_name

String

Catalog name.

catalog_id

String

catalogID.

database_name

String

Database name.

database_id

String

Database ID.

database_status

Integer

Database status. The options are 0 (normal), 1 (deleting), 2 (deleted), or 3 (restoring).

external_database_id

String

User database ID, which is specified during creation and cannot be changed.

owner

String

Database owner.

owner_type

String

Owner type. The options are USER (user), GROUP (group), and ROLE (role).

Enumeration values:

  • USER
  • GROUP
  • ROLE

owner_auth_source_type

String

Owner authorization source type. The options are IAM (cloud user), SAML (SAML-based federation), LDAP (lD user), LOCAL (local user), AGENTTENANT (agency), and OTHER (others). The LakeFormation service is divided into phase 1 and phase 2. The response body of phase 1 does not contain this parameter.

Enumeration values:

  • IAM
  • SAML
  • LDAP
  • LOCAL
  • AGENTTENANT
  • OTHER

description

String

Database description.

location

String

Database directory, for example, obs://location/uri/.

parameters

Map<String,String>

Parameters.

table_location_list

Array of strings

List of table paths. The LakeFormation service is divided into phase 1 and phase 2. The response body of phase 1 does not contain this parameter. In phase 2, the default value is null. Value null indicates that the response body does not contain this parameter.

function_location_list

Array of strings

Function path list. Value null (the default value) indicates that the response body does not contain this parameter.

update_time

String

Database metadata last modification time.

Status code: 400

Table 5 Response body parameters

Parameter

Type

Description

error_code

String

Error code.

error_msg

String

Error message.

solution_msg

String

Solution.

Status code: 404

Table 6 Response body parameters

Parameter

Type

Description

error_code

String

Error code.

error_msg

String

Error message.

solution_msg

String

Solution.

Status code: 500

Table 7 Response body parameters

Parameter

Type

Description

error_code

String

Error code.

error_msg

String

Error message.

solution_msg

String

Solution.

Example Requests

PUT https://{endpoint} /v1/{project_id}/instances/{instance_id}/catalogs/{catalog_name}/databases/{database_name}

{
  "database_name" : "db8a9ea595e6a14db1bdb3c3a90bf2554c",
  "owner" : "owner",
  "owner_type" : "USER",
  "description" : "description",
  "location" : "obs://location/test/db8a9ea595e6a14db1bdb3c3a90bf2554c.db",
  "parameters" : {
    "transient_lastDdlTime" : "120",
    "comment" : "comment message",
    "classification" : "other"
  }
}

Example Responses

Status code: 200

OK

{
  "catalog_name" : "hive",
  "database_name" : "policy_test",
  "owner" : "lakeformation",
  "owner_type" : "USER",
  "owner_auth_source_type" : "IAM",
  "description" : "",
  "location" : "obs://lakeformation/test",
  "parameters" : {
    "transient_lastDdlTime" : "120",
    "comment" : "comment message",
    "classification" : "other"
  },
  "table_location_list" : [ ],
  "function_location_list" : [ ]
}

Status code: 400

Bad Request

{
  "error_code" : "common.01000001",
  "error_msg" : "failed to read http request, please check your input, code: 400, reason: Type mismatch., cause: TypeMismatchException"
}

Status code: 401

Unauthorized

{
  "error_code": 'APIG.1002',
  "error_msg": 'Incorrect token or token resolution failed'
}

Status code: 403

Forbidden

{
  "error" : {
    "code" : "403",
    "message" : "X-Auth-Token is invalid in the request",
    "error_code" : null,
    "error_msg" : null,
    "title" : "Forbidden"
  },
  "error_code" : "403",
  "error_msg" : "X-Auth-Token is invalid in the request",
  "title" : "Forbidden"
}

Status code: 404

Not Found

{
  "error_code" : "common.01000001",
  "error_msg" : "response status exception, code: 404"
}

Status code: 408

Request Timeout

{
  "error_code" : "common.00000408",
  "error_msg" : "timeout exception occurred"
}

Status code: 500

Internal Server Error

{
  "error_code" : "common.00000500",
  "error_msg" : "internal error"
}

Status Codes

Status Code

Description

200

OK

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

408

Request Timeout

500

Internal Server Error

Error Codes

See Error Codes.