機能の概要
このAPIは、指定されたOB Cloudデータベースインスタンス内の特定のテナント配下にある指定されたデータテーブルのスキーマ情報を照会するために使用されます。テーブル名、データベース名、時間範囲などのパラメータを指定することで、テーブルの詳細な構造定義を取得できます。
呼び出しの説明
インターフェース制約
呼び出し元はマルチクラウドAPIにアクセスするためのキーを保有している必要があります。AccessKey IDとAccessKey Secretの取得方法の詳細については、アクセスキーの管理をご参照ください。
リクエストパス
POST /api/v2/instances/{instanceId}/tenants/{tenantId}/schema
リクエストパラメータ
パスパラメータ
パラメータ名 |
型 |
必須 |
説明 |
サンプル値 |
|---|---|---|---|---|
| instanceId | string | はい | OB CloudデータベースインスタンスID。 | obcluster-***** |
| tenantId | string | はい | テナントID。 | t4louaeei**** |
クエリパラメータ
パラメータ名 |
型 |
必須 |
説明 |
サンプル値 |
|---|---|---|---|---|
| requestId | string | はい | 追跡用のリクエストID。 | dc302d76-66b5-48d8-ab53-a035******** |
リクエストボディパラメータ
パラメータ名 |
型 |
必須 |
説明 |
サンプル値 |
|---|---|---|---|---|
| startTime | string | いいえ | クエリ開始時刻。 | 2023-10-01 00:00:00 |
| endTime | string | いいえ | クエリ終了時刻。 | 2023-10-31 23:59:59 |
| sqlType | string | いいえ | SQLタイプ。 | SELECT |
| sqlId | string | いいえ | SQL ID。 | 8D6E84B0E0A7976E |
| requestId | string | いいえ | リクエストID。 | dc302d76-66b5-48d8-ab53-a035******** |
| instanceId | string | いいえ | OB CloudデータベースインスタンスID。 | obcluster-***** |
| tenantId | string | いいえ | テナントID。 | t4louaeei**** |
| dbName | string | いいえ | データベース名。 | test_db |
| tableNames | array[string] | いいえ | クエリ対象のスキーマのテーブル名のリスト。 | ["table1", "table2"] |
実行結果
パラメータ名 |
型 |
説明 |
|---|---|---|
| code | string | 戻り値コード。 |
| data | object | 戻されるデータオブジェクト。 |
| message | string | 戻されるメッセージ。 |
| requestId | string | リクエストID。 |
| server | string | サーバーアドレス。 |
| success | boolean | リクエストが成功したかどうか。 |
例
リクエスト例
curl -X POST \
-H "Content-Type: application/json" \
-u '<Your AK:SK>' \
"https://api-cloud.oceanbase.com/api/v2/instances/{instanceId}/tenants/{tenantId}/schema?requestId={requestId}" \
-d '{
"startTime": "2023-10-01 00:00:00",
"endTime": "2023-10-31 23:59:59",
"sqlType": "SELECT",
"sqlId": "8D6E84B0E0A7976E",
"requestId": "{requestId}",
"instanceId": "{instanceId}",
"tenantId": "{tenantId}",
"dbName": "test_db",
"tableNames": ["table1", "table2"]
}'
実行結果例
{
"code": "200",
"data": {
"tableSchemaList": [
{
"tableName": "table1",
"columns": [
{
"columnName": "id",
"dataType": "int",
"isNullable": "NO",
"columnDefault": null,
"extra": "auto_increment"
},
{
"columnName": "name",
"dataType": "varchar(255)",
"isNullable": "YES",
"columnDefault": null,
"extra": ""
}
]
}
]
},
"message": "success",
"requestId": "xxxxxx",
"server": "xxx.xxx.x.xxx:xxxx",
"success": true
}