- 締切済み
Oracleデータベースの削除について
社内のOracle10で動いている在庫管理システムがあります。 作りこみのアプリは.netか?不明ですが 過去のデータを削除したいのですが 普通にOracleのSQLコマンドで削除すれば過去履歴は削除できる ものなのでしょうか? よろしくお願い致します。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
消せると思いますが。 システムのデータ整合が取れなくなる危険性がありますので、 できれば、その開発会社に行ってもらうか、最低でもアドバイスを もらうべきかと思います。 通常の在庫管理システムは、大体の構造が、 ・商品マスタ ・販売や入出荷などの実務データ ・数だけを集めた在庫マスタ という形を取っているはずなのですが。 例えば、 商品A、入荷10、販売2、販売2。 在庫 残6。 とあるときに、DELETEのSQLで短絡的に、在庫残6を抹消してしまうと 帳票によっては「商品A、入荷10、販売2、販売2」は消えていない のでおかしい帳票が出来てしまう可能性があります。 (見ている帳票で数字が会わないなど。 ※この例では、 商品A、入荷10、販売2、販売2。在庫 残6。 全部消すのが正となります よって、SQLでDELETEスローは、データベース構造が判っていないと 危険ですので辞めた方がいいでしょう。 逆に、一方で。 ソフト側の操作でゼロ操作する方法もあると思います。 上記の例では、出荷10、売上返品4…をすると、相殺されて0に なります。 また、店舗システムであれば、棚卸で在庫ゼロ登録し、すべて 差異であげてしまうのもいいでしょう。 操作が面倒ですが、この操作の方が確実にデータのつじつまを 合わせつつゼロに出来ます。 ご検討ください。