テーブル内のすべてのレコードの削除

  • リリースバージョン: Xanadu
  • 更新日 2024年08月01日
  • 所要時間:2分
  • テーブル自体を削除せずに、テーブルのすべてのレコードを削除することもできます。たとえばアドミニストレーターは、インシデントテーブル自体を削除せずに、テストインスタンスのインシデントをすべて削除したい場合があります。

    始める前に

    必要なロール:admin

    このタスクについて

    テーブルから大量のレコード削除を準備する際には、パフォーマンスへの影響を最小限に抑えるために、次のガイドラインを考慮してください。
    • 1 回の削除アクションで削除するレコードの数を制限して、テーブルがロックされないようにします。「setLimit」で説明されている setLimit() メソッドを使用します。
    • この削除の結果として過剰な数のビジネスルールがトリガーされるのを最小限に抑えます。「setWorkflow」で説明されている setWorkflow(Boolean e) メソッドを使用します。
    注:
    テーブルのすべてのレコードを削除すると、そのテーブルを拡張するテーブルのレコードも削除されます。

    テーブルレコードを削除するには、いくつかの方法があります。削除するレコードの数に応じて、環境で最も効率的な方法を選択してください。この方法は慎重に使用してください。この手順を実行する前に、レコードが不要であることを確認してください。

    手順

    • [テーブルと列] モジュールから、次の手順を実行します。
      1. 移動先 システム定義 > テーブルと列.
      2. レコードを削除するテーブルを選択します。
        注:
        レコードを削除するテーブルがスコープ対象のアプリケーションに属している場合は、スコープピッカーでそのアプリケーションを選択します。または、スコープ対スコープアクセスを構成することもできます。「Restricted caller access privilege settings」を参照してください。
        テーブルと列
        注:
        システムテーブルには、このレコードの削除方法が許可されていないものがあります。たとえば、ユーザーレコード [sys_user] をすべて削除することはできません。テーブルのリストには、レコードを削除できないシステムテーブルは含まれていません。
      3. [すべてのレコードを削除] をクリックします。
      4. 確認ダイアログボックスで、delete と入力し、[OK] をクリックします。
    • リストビューから、次の手順を実行します。
      1. リスト v2 で、テーブルレコードを表示するリストビューに移動し、コンテキストメニューをクリックして [表示] に移動します。
      2. リスト v3 で、フッターの [<数値> 行/ページ] をクリックします。
      3. 表示する最大数を、1 ページあたりの行数で設定します。
      4. ページ上のすべての行を選択します。
      5. [選択した行のアクション] をクリックし、[削除] をクリックします。
      6. すべてのレコードが削除されるまで、ページ上のすべての行の削除を続行します。

    タスクの結果

    選択したテーブルにはレコードがありません。テーブルはまだ存在し、他のテーブル上のそのテーブルへの参照 (ビジネスルールや参照フィールドなど) は保持されます。