In ODC, how to remove from the database the Entities or the Entity parameters that have been deleted from an app. ?
In O11, the app "DB Cleanup On Steroids" was providing such capability.
Hi Renaud,
Why you think you need this in ODC? Do you experience a problem?
ODC is build on other technology and does not have the same issue as O11, as is assured by OutSystems to me when I asked about this.
You can assume that ODC automatically does delete of tables in the Aurora database.
Regards,
Daniel
Hi Daniel,
I do not need an app to perform such maintenance operation but during the development of an app there are regularly cases where you need to refactor your data model.
If by example you firstly choose to have a one-to-one relationship between two entities by using the identifier of one table as the primary key for the second one and then lately you have the need to change that relationship in order to have for both entities an "auto number long integer" as primary key and you want to keep the name of firstly created parameter (eg: Id), you got en error message during the publication which seems logical as the entity attribute is not deleted from the database itself.
In the meantime, and thanks to your reply, I've discovered that indeed the deletion of an entity can solve the problem as you can now recreate a new entity with the same name. So, I guess it is the best thing to do in such case.
But with this solution you need to remove all the already created logic behind the entity in order to be able to publish your changes ... which is not really effective.
Am I right or is there a better solution ?
Thanks for your help!
Hi,
Changing an existing entity model is always challenging, so more over very important to think through your design upfront. For changing primary key data type, I don't see a better way than to recreate the entity as you described.
Daniel,
Indeed it is always better to conceive the data model upfront but in the same time this is wishful thinking and goes a bit against agile development where the paradigm is to be able to evolve our applications over time. I am aware of the complexity this requires but therein lies the difference between theory and practice.
However, thank you very much for guiding me towards the solution.
Have a great day,
Renaud