Re: Temporary Views
От | Bruce Momjian |
---|---|
Тема | Re: Temporary Views |
Дата | |
Msg-id | 200208131508.g7DF8xb06818@candle.pha.pa.us обсуждение исходный текст |
Ответ на | Temporary Views (Gavin Sherry <swm@linuxworld.com.au>) |
Список | pgsql-hackers |
Gavin Sherry wrote: > Hi all, > > I'm thinking that temporary views should be pretty trivial to > implement. > > * Allow temporary views > > This should be as simple as modifying gram.y (to set > ViewStmt->view->istemp) and some logic in RemoveTempRelations() to remove > the view's rule Yep, pretty simple. > * Require view using temporary tables to be temporary views > > This is the non-trivial part. If you are creating a view on just a > temporary table there's no problem. But what happens when do the > following? > > CREATE VIEW abc AS select * from tab1,tab2,temp_tab3 ... > > SQL99 avoids this with syntax rule 6 of 11.21 <view definition> > > No <table reference> generally contained in the <query expression> shall > identify any declared local temporary table. > > There are a few ways it could be implemented: > > 1) SQL99 > 2) Views whose <query epression> contains one or more <table references> > to temporary tables are created as temporary views > 3) Views whose <query epression> contains one or more <table references> > to temporary tables must be explicitly include the TEMP[ORARY] syntax. The idea is that if the temp table goes away, we don't want the view continuing to exist. I think if there are any temp tables in the view, the view _has_ to be specified by the user as temporary, or we throw an error telling them it has to be temporary. -- Bruce Momjian | http://candle.pha.pa.us pgman@candle.pha.pa.us | (610) 359-1001+ If your life is a hard drive, | 13 Roberts Road + Christ can be your backup. | Newtown Square, Pennsylvania19073
В списке pgsql-hackers по дате отправления: