创建视图(简化)后如下:
create view testView as
select t1.* from table1 t1
join table2 t2 on t1.id = t2.id
where t1.value = someValue
尝试编辑时,通配符已替换为表的实际列名。
这对我来说很烦人,因为我将新列添加到表中,因为我需要手动将它们添加到视图中,或保存创建脚本,然后在进行表修改后重新执行它。
有没有办法保留通配符进行编辑?在MSSQL中,编辑视图时保留了通配符,我可以简单地执行sp_refreshview [viewname]来更新视图以包含表中的任何新列。
答案 0 :(得分:1)
来自MySQL documentation的CREATE VIEW
:
视图定义在创建时被“冻结”,因此更改为 之后的基础表不会影响视图定义。对于 例如,如果视图在表,新列上定义为SELECT * 稍后添加到表中不会成为视图的一部分。
所以简短的回答是否定的,你不能保留通配符。