对于我可以这样做的表:
ALTER TABLE table_name
ADD column_name datatype
但这不适用于现有视图。我想知道是否有办法解决这个问题?
答案 0 :(得分:6)
使用Alter View语句编辑视图。只需在当前视图中使用现有的SQL语句,并将列添加到末尾。
http://dev.mysql.com/doc/refman/5.0/en/alter-view.html
比实际文档更详细的解释可以在这里找到:
http://www.roseindia.net/mysql/mysql5/views.shtml
编辑 - 添加
视图只能显示现有表格中的数据。您必须将列添加到表中,然后修改视图以显示它。
以这种方式思考:视图只是查看表中现有数据的一种方式。表格是实际数据的持有者。
我能想到的上述模式的唯一例外是,您可以在视图上放置一个列,该列填充了计算结果,例如加法或字符串争用。例如,考虑一个包含EmployeeId,FirstName和LastName列的表......
您可以看到如下所示的视图:
Create View FullNames AS
Select EmployeeId, firstname + ' ' + lastname AS FullName from Employees
在这种情况下,我排序添加一个表中不存在的列 - FullName。它是基于表数据的计算值。但是,它仍然基于存储在某个数据库中的数据。