我已经完成了一系列研究并试图弄清楚如何执行此操作,但所有建议的内容似乎都不适用于我。我创建使用下面的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