0

プロジェクトで ORM テレリック オープン アクセスを使用しています。これを使用して、データベースにデータを作成および追加できます。

今、私は自分のデータベースからすべてのデータを消去したいと考えています。各テーブルからデータを削除することで実行できますが、長いコードが必要になります。DBContextを使用してそれをきれいにする方法をグーグルで調べましたが、何も見つかりませんでした。データベースをクリーンアップする別の方法がありますが、DB 内の各テーブルの削除関数を呼び出すためにループしていませんか?

4

2 に答える 2

1

(SQL SERVER のみ) 次の SQL スクリプトを使用して、データベース内のデータをクリーンアップできます。

/* 1. すべての制約とトリガーを無効にします*/ exec sp_MSforeachtable 'ALTER TABLE ? NOCHECK CONSTRAINT ALL' exec sp_MSforeachtable 'ALTER TABLE ? すべてのトリガーを無効にする'

/* 2. テーブルのデータをすべて削除 */ exec sp_MSforeachtable 'DELETE ?'

/* 3. すべての制約とトリガーを有効にします */ exec sp_MSforeachtable 'ALTER TABLE ? CHECK CONSTRAINT ALL' exec sp_MSforeachtable 'ALTER TABLE ? すべてのトリガーを有効にする'

/* 4. テーブル ID をリセットします */ exec sp_MSforeachtable 'IF OBJECTPROPERTY(OBJECT_ID(''?''), ''TableHasIdentity'') = 1 BEGIN DBCC CHECKIDENT (''?'',RESEED,0) END'

于 2013-09-12T06:38:10.430 に答える