在视图中动态获取表中的所有列

时间:2017-10-29 01:56:49

标签: mysql sql

在MySQL中,保存以下视图后:

CREATE VIEW MyView AS SELECT * FROM MyTable;

如果我编辑 MyView ,则星号消失,SQL包含所有字段名称。例如:

ALTER VIEW MyView AS SELECT field1, field2 FROM MyTable;

MyTable 添加了新字段时,我希望视图输出也显示这些新字段。如何防止使用文字列名替换asterix?

1 个答案:

答案 0 :(得分:0)

这是一个反模式。不要用select *写出观点 - 它会回来咬你。

您可以编写自动生成的SQL语句来生成视图代码,以便通过引用INFORMATION_SCHEMA.COLUMNS

来节省您的时间。