Skip to main content

 

OutSystems 11オンラインヘルプ

 

OutSystems

DbCleaner API

DbCleaner APIは、データベースの空き領域を確保するための機能を提供します。以下の操作を可能にするアクションを使用してこれを実現します。

  • いずれかのアプリケーションで使用されなくなったエンティティ/アトリビュートに対応するデータベースのテーブル/列を削除する。
  • 古すぎて不要になったモジュールバージョンを削除する。

アプリケーションでエンティティやアトリビュートを削除しても、OutSystemsではデータベース内の対応するテーブルや列は削除されません。アプリケーションをロールバックするときに備え、データは安全に保存されます。このAPIを使用すると、使用されていないモジュールバージョン、エンティティ、アトリビュートを削除してデータベースの空き領域を確保できます。

DbCleaner APIの呼び出しはすべて監査され、ログに記録されます。監査ログは環境管理コンソールの[General Log]セクションに表示され、エラーは[Error Log]セクションでログに記録されます。

このAPIを使用するには、開発環境の[References]ウィンドウを使用してDbCleaner_APIモジュールを参照します。

要件

このAPIを使用するには、以下の要件があります。

  • このAPIを呼び出すモジュールで、必ずService Centerをユーザープロバイダモジュールとして設定していること。
  • 呼び出されるアクションに応じて、必ずログインユーザーが「Change & Deploy(変更とデプロイ)」権限または「Administrator(管理者)」ビルトインロールを持っていること。詳細については、アクションのドキュメントをご覧ください。

マルチテナントエンティティや、翻訳を持つ静的エンティティをこのAPIのバージョン9.0.0.23で削除する場合、削除されるテーブルや列を使用しているモジュールを再パブリッシュする必要があります。つまり、エンティティまたはアトリビュートを持つモジュールと、それを参照するすべてのモジュールを再パブリッシュする必要があります。

概要

アクション 説明
Attribute_DropColumn 指定されたエンティティアトリビュートに関連付けられたデータベーステーブルの列を物理的に削除します。 エンティティアトリビュートがモジュールのメタモデル内にまだ存在している場合、削除オペレーションは実行されません。
ログインユーザーはAdministratorビルトインロールが必要です。
Attribute_ListDeleted モジュールのメタモデルからは削除されているが、データベース内に物理的にまだ存在しているアトリビュートのリストとその情報を返します。
ログインユーザーはAdministratorビルトインロールが必要です。
Entity_DropTable 指定されたエンティティに関連付けられたデータベーステーブルを物理的に削除します。 エンティティがモジュールのメタモデル内にまだ存在している場合、削除オペレーションは実行されません。
ログインユーザーはAdministratorビルトインロールが必要です。
Entity_ListDeleted](<#Entity_ListDeleted>) モジュールのメタモデルからは削除されているが、データベース内に物理的にまだ存在しているアトリビュートのリストとその情報を返します。
ログインユーザーはAdministratorビルトインロールが必要です。
ModuleVersion_Delete 指定されたモジュールの指定されたモジュールバージョンをデータベースから削除します。
ログインユーザーはChange & Deploy権限が必要です。
ModuleVersion_DeleteAll 指定された日時より前にパブリッシュされたモジュールバージョンを削除します。このアクションでは、現在パブリッシュされているモジュールバージョンと、アプリケーションまたはソリューションのタグ付けされたバージョンで使用されているモジュールバージョンは削除されません。
ログインユーザーはChange & Deploy権限が必要です。
ModuleVersion_ListOldest データベース内に保存されている、指定された日時より前にパブリッシュされたモジュールバージョンのリストを返します。このアクションでは、現在パブリッシュされているモジュールバージョンと、アプリケーションまたはソリューションのタグ付けされたバージョンで使用されているモジュールバージョンは削除されません。
ログインユーザーはChange & Deploy権限が必要です。
ストラクチャ 説明
AttributeInfo 特定のエンティティアトリビュートに関する情報。
EntityInfo 特定のエンティティに関する情報。
ModuleInfo 特定のモジュールに関する情報。
ModuleVersionInfo 特定のモジュールバージョンに関する情報。
静的エンティティ 説明
ModuleType モジュールのタイプ。

アクション

Attribute_DropColumn

指定されたエンティティアトリビュートに関連付けられたデータベーステーブルの列を物理的に削除します。 エンティティアトリビュートがモジュールのメタモデル内にまだ存在している場合、削除オペレーションは実行されません。
ログインユーザーはAdministratorビルトインロールが必要です。

入力

AttributeId
型: 必須。Integer。
アトリビュートの識別子。

Attribute_ListDeleted

モジュールのメタモデルからは削除されているが、データベース内に物理的にまだ存在しているアトリビュートのリストとその情報を返します。
ログインユーザーはAdministratorビルトインロールが必要です。

出力

DeletedAttributes
型: AttributeInfo List。
モジュールのメタモデルから削除されたアトリビュートのリストとその情報。

Entity_DropTable

指定されたエンティティに関連付けられたデータベーステーブルを物理的に削除します。 エンティティがモジュールのメタモデル内にまだ存在している場合、削除オペレーションは実行されません。
ログインユーザーはAdministratorビルトインロールが必要です。

入力

EntityId
型: 必須。Integer。
エンティティの識別子。

Entity_ListDeleted

モジュールのメタモデルからは削除されているが、データベース内に物理的にまだ存在しているエンティティのリストとその情報を返します。
ログインユーザーはAdministratorビルトインロールが必要です。

出力

DeletedEntities
型: EntityInfo List。
モジュールのメタモデルから削除されたエンティティのリストとその情報。

ModuleVersion_Delete

指定されたモジュールの指定されたモジュールバージョンをデータベースから削除します。
ログインユーザーはChange & Deploy権限が必要です。

入力

ModuleVersionId
型: 必須。Integer。
モジュールバージョンの識別子。
ModuleId
型: 必須。Integer。
モジュールの識別子。

ModuleVersion_DeleteAll

指定された日時より前にパブリッシュされたモジュールバージョンを削除します。このアクションでは、現在パブリッシュされているモジュールバージョンと、アプリケーションまたはソリューションのタグ付けされたバージョンで使用されているモジュールバージョンは削除されません。
ログインユーザーはChange & Deploy権限が必要です。

入力

OlderThan
型: 必須。Date Time。
この時点以降のモジュールバージョンがデータベースから削除されないことを示す日時。
ModuleId
型: 任意。Integer。
モジュールの識別子。指定されていない場合は、すべてのモジュールのモジュールバージョンを返します。
MaxNumberOfVersions
型: 任意。Integer。
取得するバージョンの最大数。指定されていない場合は、最も古いモジュールバージョンを100件返します。0(ゼロ)に設定すると、すべてのモジュールバージョンを取得します。

出力

HasMoreVersions
型: Boolean。
削除するモジュールバージョンがまだある場合はTrueを返します。

ModuleVersion_ListOldest

データベース内に保存されている、指定された日時より前にパブリッシュされたモジュールバージョンのリストを返します。このアクションでは、現在パブリッシュされているモジュールバージョンと、アプリケーションまたはソリューションのタグ付けされたバージョンで使用されているモジュールバージョンは返されません。
ログインユーザーはChange & Deploy権限が必要です。

入力

OlderThan
型: 必須。Date Time。
この時点以降のモジュールバージョンがデータベースから削除されないことを示す日時。
ModuleName
型: 任意。Text。
モジュールの名前。指定されていない場合は、任意の名前を持つモジュールのモジュールバージョンを返します。
ModuleTypeId
型: 任意。ModuleType Identifier。
モジュールのタイプ。指定されていない場合は、任意のタイプのモジュールのモジュールバージョンを返します。
MaxNumberOfVersions
型: 任意。Integer。
取得するバージョンの最大数。指定されていない場合は、最も古いモジュールバージョンを100件返します。0(ゼロ)に設定すると、すべてのモジュールバージョンを取得します。

出力

ModuleVersions
型: ModuleVersionInfo List。
過去にパブリッシュされて、データベースに引き続き保存されているモジュールバージョンのリストとその情報。
HasMoreVersions
型: Boolean。
リストに含まれるもののほかにもモジュールバージョンがある場合はTrueを返します。

ストラクチャ

AttributeInfo

特定のエンティティアトリビュートに関する情報。

アトリビュート

Id
型: Integer。
アトリビュートの一意の識別子。
Name
型: Text。
アトリビュートの名前。
IsDeleted
型: Boolean。
アトリビュートが削除されたかどうかを示します。
EntityInfo
型: EntityInfo
アトリビュートが属しているエンティティに関する情報。

EntityInfo

特定のエンティティに関する情報。

アトリビュート

Id
型: Integer。
エンティティの一意の識別子。
Name
型: Text。
エンティティの名前。
IsDeleted
型: Boolean。
エンティティが削除されたかどうかを示します。
ModuleInfo
型: ModuleInfo
エンティティが属しているモジュールに関する情報。

ModuleInfo

特定のモジュールに関する情報。

アトリビュート

Id
型: Integer。
モジュールの一意の識別子。
Name
型: Text。
モジュールの名前。
IsDeleted
型: Boolean。
モジュールが削除されたかどうかを示します。
ModuleTypeId
型: ModuleType Identifier。
モジュールタイプの識別子。

ModuleVersionInfo

特定のモジュールバージョンに関する情報。

アトリビュート

Id
型: Integer。
モジュールバージョンの一意の識別子。
Version
型: Text。
バージョン番号。
UploadedDate
型: Date Time。
バージョンがサーバーにアップロードされた日時。
LastPublishedDate
型: Date Time。
モジュールバージョンが最後にパブリッシュされた日時。
ModuleInfo
型: ModuleInfo
モジュールバージョンが属しているモジュールに関する情報。

静的エンティティ

ModuleType

モジュールのタイプ。

アトリビュート

Id
型: Integer。
Label
型: Text (50)。

レコード

  • 拡張機能
  • Espace
  • Was this article helpful?