回答編集履歴

1

蛇足の追記

2017/07/24 10:06

投稿

hatena19
hatena19

スコア33699

test CHANGED
@@ -183,3 +183,23 @@
183
183
  End Function
184
184
 
185
185
  ```
186
+
187
+
188
+
189
+ 蛇足
190
+
191
+ ---
192
+
193
+ 削除したレコードをいったんゴミ箱に保存しておいて、また復活できるようにしようということですよね。
194
+
195
+ 実際にテーブルから削除せずに、テーブルに「削除日時」「削除ユーザ」フィールドを持たせて、そのフィールドがNullなら有効なレコード、入力されていたら削除レコードとして扱う、という方法もあります。
196
+
197
+
198
+
199
+ テーブルから実際に削除してしまうと、リレーションシップで参照整合性が設定できないなど、いろいろ具合が悪い場合があります。削除フィールドがNull以外のレコードのみ抽出するクエリを、現状のテーブルと置き換えるだけですので、シンプルにゴミ箱が実現できます。
200
+
201
+
202
+
203
+ [削除したレコードを復活できる「ごみ箱」の設計 - hatena chips](http://hatenachips.blog34.fc2.com/blog-entry-151.html)
204
+
205
+