我已經完成了一系列研究並試圖弄清楚如何執行此操作,但所有建議的內容似乎都不適用於我。我創建使用下面的SQL表:將表插入到SQL Server視圖中
CREATE VIEW view_name AS SELECT * FROM table1_name
當我這樣做,如果我做出這些變化反映在視圖改變table1_name
(我想)。但是,後來我創建了一個表table2_name
並希望以相同的方式將它添加到此視圖中,以便如果向表中添加行,它們將反映在視圖中。所以,我使用了類似的一段代碼,(但使用插入代替)
INSERT INTO view_name SELECT * FROM table2_name
但是,現在當我做出補充table2_name
這些都沒有反映在視圖。我非常新的SQL(三天前開始),所以我應該看看任何想法或地方將非常感激。
(注:我使用的SQL Server中,我似乎並不認爲這使多大的差別,但如果它確實)
感謝, SaxyTimmy
強烈建議避免使用SELECT *,特別是在視圖中。是的,輸入起來比較容易,但以後可能會導致問題,特別是在架構不斷髮展的情況下。使用SELECT *意味着每次更改基礎表時都需要刷新視圖。你應該總是明確地指定你想要的列。 –
看起來我們要在元數據的領域冒險,可以請您標記和/或指定您正在使用的SQL Server的版本?這個信息總是*預先有用。 –
我正在使用MS SQL Server 2008,對此感到抱歉 – SaxyTimmy