Hello,
Imagine I have an Orders table with columns OrderID (PK), CustomerID, CustomerOrderN and so on. Now I need to add a possibility to "close" orders with specifying a reason why order is closed (for example "offered price is too high for customer", "not available", "customer asked to close the order").
Question 1. What would be the best and correct way to implement this in database design?
I think the best way is to create Closed column which can be null (if order is open) and if not null (i.e. if order is closed) then the value points to another table OrderCloseReasons.
Question 2. What if I already have :) a boolean column Closed in Orders table, and now I need to implement possibility to specify reasons of closing. I can't refactor much because the system is not so small already, so it's hard to refactor the database scheme. What would be the best way to add possibility to specify reasons of closing in such a case?
I think that if I just add CloseReasonID column to Orders table it will not be good. But I am not sure.
Thank you in advance.