This is more of a discussion than a cry for help and is open to anyone who wants to add their .02 (admins, gurus, developers, code monkeys, noobs, etc.).
This might sound like something from Databases 101, but I'm in my first work setting with people who have "DBA" and "Admin" in their title. I know it's just a job title, but some have very unorthodox and strange design theories and I wanted to make sure I wasn't way off with mine.
VIEWS. Personally, I love them. Let's say I have a Employee table with 15 columns and 7 have FK constraints established (ex. job status, department, manager, etc.). I'd create a view called "vw_Employees" or "vw_EmployeeDetails" with all of the joins neccessary to return meaningful information and not a bunch of cryptic IDs, unless of course that's what I need.
The security and performance advantages of views (indexed, partitioned, etc) are obvious, but the layer of abstraction created allows certain changes to be made (names, data types, etc.) without breaking an entire application or even pulling it offline. How can anyone think this is a bad thing?
Yes, there are situations where views are not very beneficial, but for the most part I find they save time somewhere.
1) Are views the best thing since sliced bread or the offspring of satan?
2) Do you use them? If so, when, where, why, and how?