Changement de PostgreSQL colonnes utilisées dans les vues

Je voudrais PostegreSQL pour se détendre un peu. Chaque fois que je veux modifier une colonne utilisée dans une vue, il semble que j'ai à la baisse de la vue, modifiez le champ, puis de les recréer la vue. Puis-je renoncer à cette protection supplémentaire et juste dire PostgreSQL permettez-moi de changer de domaine et de déterminer l'ajustement de la vue?

Précisions:
Je comprends ce point de vue est. En fait, c'est parce que la vue est comme une sous-requête que je souhaite que je pourrais juste changer les tables sous-jacentes et d'avoir le point de vue de ramasser le changement.

Disons que j'ai le texte suivant:

CREATE TABLE monkey
(
  "name" character varying(50) NOT NULL,
)

CREATE OR REPLACE VIEW monkey_names AS 
 SELECT name
   FROM monkey

J'ai vraiment envie de le faire ce qui suit dans un script de migration sans avoir à supprimer et recréer la vue.

ALTER TABLE monkey ALTER COLUMN "name" character varying(100) NOT NULL
Ne pense pas que d'un point de vue comme un tableau...il n'existe pas physiquement, c'est une sous-requête, vous faites allusion. Il n'y a vraiment pas de créer de surcharge lors de la création ou remplacement de vue énoncé, et aucune instruction alter view pour cette raison.
Je l'ai dit cette chose mal... donnez-moi une minute pour expliquer.
Ah désolé. Compte tenu de votre réputation, je me demandais si c'était vraiment ce que vous demandez. Je suis curieux de savoir si il y a une réponse ici, car j'ai le sentiment que je vais faire dans l'année à venir.
Il y a en fait un ALTER VIEW déclaration dans PostgreSQL. Vous ne pouvez pas changer le point de vue de la définition de la requête, mais il y a d'autres auxiliaires attributs.

OriginalL'auteur Larsenal | 2011-12-15