2011-09-15 9 views

Respuesta

7

Utilice la declaración Alter View para editar una vista. Simplemente use la instrucción SQL existente en la vista actual y agregue la columna al final.

http://dev.mysql.com/doc/refman/5.0/en/alter-view.html

explicación más detallada de los documentos reales se puede encontrar aquí:

http://www.roseindia.net/mysql/mysql5/views.shtml

Editar - añadió

Una vista sólo puede mostrar los datos de una tabla existente. Tendría que agregar la columna a la tabla y luego modificar la vista para mostrarla también.

Piénselo de esta manera: una vista es solo una forma de ver los datos existentes en las tablas. Las tablas son titulares de datos reales.

La única excepción al patrón de arriba que puedo pensar es que puede tener una columna en una vista que se llena con los resultados de un cálculo como adición o contención de cadena. Por ejemplo, considere una tabla con EmployeeId, Nombre y Apellidos columnas ...

Usted podría tener un punto de vista que tiene este aspecto:

Create View FullNames AS 
Select EmployeeId, firstname + ' ' + lastname AS FullName from Employees 

En ese caso, estoy tipo de la adición de un columna que no existe en una tabla - FullName. Es un valor calculado basado en datos de tabla. Sin embargo, todavía se basa en datos almacenados en la base de datos en alguna parte.

+1

Entiendo cómo agregan una columna a una vista existente, pero usan la instrucción "seleccionar", lo que significa que la columna tiene que ser de otras tablas. Lo que quiero decir es ¿puedo crear una nueva columna dentro de la vista tal como lo hace la declaración alter table en una tabla? – root

+0

También estaba buscando una forma de agregar una columna a una vista (suponiendo que la columna ya exista en la tabla subyacente). No pensé que fuera posible, ya que realmente no tiene sentido una vez que comienzas a tener vistas basadas en combinaciones complejas y cosas así. –

Cuestiones relacionadas