From: | "Jaime Casanova" <systemguards(at)gmail(dot)com> |
---|---|
To: | "Martin Marques" <martin(at)bugs(dot)unl(dot)edu(dot)ar> |
Cc: | ZkrGy(at)ono(dot)com, pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | Re: problema con vistas |
Date: | 2006-07-17 05:39:29 |
Message-ID: | c2d9e70e0607162239j2447380byc6184feb22d2499b@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
On 7/16/06, Martin Marques <martin(at)bugs(dot)unl(dot)edu(dot)ar> wrote:
>
> On Sun, 16 Jul 2006 22:57:13 +0200, ZkrGy(at)ono(dot)com wrote:
> > Saludos.
> > Miren, necesito crear unas vistas, mediante las cuales los usuarios
> > introducirán
> > datos en la BD. Bien, para controlar las inserciones quería usar WITH
> > CHECK
> > OPTIONS (siempre lo he hecho así en Oracle) pero en Postgres me da un
> > error,
> > parece como si no estuviese implementado.
>
> Del Oracle8 SQL Reference, hay una seccion "Oracle and Standard SQL":
>
> CREATE VIEW
>
> The CREATE VIEW command supports this additional syntax:
>
> * OR REPLACE option
> * FORCE and NOFORCE options
> * CONSTRAINT identifier with the WITH CHECK OPTION
>
>
> Como veras, esto no esta en el ANSI-SQL.
>
de hecho, si esta. es el punto 11.19 en el SQL92, 11.21 en el SQL99 y
11.22 en el SQL2003 (al menos en el draft que tengo del SQL2003)
WITH [ CASCADED | LOCAL ] CHECK OPTION es una clausula que se usa
exclusivamente con vistas actualizables, pero en postgres aun no hay
vistas actualizables (al menos no creadas automaticamente).
mira la seccion de compatibilidad en:
http://www.postgresql.org/docs/8.1/static/sql-createview.html
Para la version 8.2 puede ser que se añada soporte para vistas
actualizables segun estan definidas en SQL92
En cuanto a la pregunta original, el usar reglas es correcto en este caso...
es mas la implementacion que se esta haciendo es precisamente crear
reglas que en la clausula WHEN ejecuten una funcion que verifique las
condiciones de la vista para saber si debe insertar (o actualizar
segun sea el caso)
--
Atentamente,
Jaime Casanova
"Programming today is a race between software engineers striving to
build bigger and better idiot-proof programs and the universe trying
to produce bigger and better idiots.
So far, the universe is winning."
Richard Cook
From | Date | Subject | |
---|---|---|---|
Next Message | Jorge Alejandro Adell | 2006-07-17 06:32:35 | vacuum y la limpieza de la base de datos |
Previous Message | Martin Marques | 2006-07-16 21:45:13 | Re: problema con vistas |