Views can be updatable though there are caveats, but deletes and updats can be done via a function or stored procedure, meaning there's no direct access by the app to the underlying schema. If it's done well it means that the calling code in the app won't have to change (or at least be minimised) even as the schema changes. The speed and security benefits are a nice by-product.
You can even do things like prevent the app from deleting things unless the functions are used and prevent poor development practices in the process.
brigandish|3 years ago
You can even do things like prevent the app from deleting things unless the functions are used and prevent poor development practices in the process.