On Mon, Feb 9, 2009 at 9:41 AM, Steven Buehler <st...@ibushost.com> wrote: > Ok, I just saw a post about using view's in mysql. I tried to look it up > and found how to use it, but my question is: what is a view and why would > you use it? Is it like a temporary table? Does it write a new database to > the disk or use memory?
A view is a piece of SQL whose result can be queried like a table. It stores no data; the results are always generated as the query executes. In some cases it does use a temporary table to hold the result and then query against it; in other cases it merges the original query's SQL and the view's SQL together and then executes the resulting query. Why use it? To abstract a complex bit of code away for simplicity. To grant permissions in a certain way (you can grant access to the view and deny access to the underlying table). There's a lot of complexity to it though, in terms of how to use views correctly and get good performance. I think the manual goes over it in good detail, and our book High Performance MySQL 2nd Edition has probably the best exploration of it otherwise. Baron -- Baron Schwartz, Director of Consulting, Percona Inc. Our Blog: http://www.mysqlperformanceblog.com/ Our Services: http://www.percona.com/services.html -- MySQL General Mailing List For list archives: http://lists.mysql.com/mysql To unsubscribe: http://lists.mysql.com/mysql?unsub=arch...@jab.org