Updated on 2024-07-12 GMT+08:00

Creating a Database Schema

Function

This API is used to create a database schema in a specified instance. Before calling this API:

Constraints

This operation cannot be performed when the instance is in any of the following statuses: creating, changing instance specifications, frozen, or abnormal.

URI

POST https://{Endpoint}/v3/{project_id}/instances/{instance_id}/schema

Table 1 Parameter description

Parameter

Mandatory

Description

project_id

Yes

Project ID of a tenant in a region.

For details about how to obtain the project ID, see Obtaining a Project ID.

instance_id

Yes

Instance ID.

Request Parameters

Table 2 Parameter description

Parameter

Mandatory

Type

Description

db_name

Yes

String

Database name.

The database name contains 1 to 63 characters, including letters, digits, and underscores (_). It cannot start with pg or a digit, and must be different from template database names.

Template databases include postgres, template0, and template1.

schemas

Yes

Array of objects

Schemas. Each element is the schema information associated with the database. A single request supports a maximum of 20 elements. For details, see Table 3.

Table 3 schemas field data structure description

Parameter

Mandatory

Type

Description

name

Yes

String

Schema name.

The value contains 1 to 63 characters, including letters, digits, and underscores (_). It cannot start with pg or a digit, and must be different from template database names and existing schema names. Template databases include postgres, template0, and template1.

Existing schemas include public and information_schema.

owner

Yes

String

Database owner.

The value contains 1 to 63 characters. It cannot start with pg or a digit and must be different from system usernames.

System users: rdsAdmin, rdsMetric, rdsBackup, and rdsRepl.

Response Parameters

None

Example Request

Creating multiple schemas in the gaussdb_test database
POST https://gaussdb-opengauss.ap-southeast-1.myhuaweicloud.com/v3/0483b6b16e954cb88930a360d2c4e663/instances/{instance_id}/schema
{ 
   "db_name" : "gaussdb_test", 
   "schemas" : [ { 
     "name" : "rds", 
     "owner" : "teste123" 
   }, { 
     "name" : "rds001", 
     "owner" : "teste123" 
   } ] 
 }

Example Response

None

Status Code

Error Code

For details, see Error Codes.