[postgis-users] Create View with PostGis table
OpenGis
opengis at libero.it
Thu Nov 13 08:47:38 PST 2003
Thanks every one!
[1]
CREATE VIEW only_pg_land_use AS SELECT t0.oid, t0.* FROM landusea_region t0;
Work fine!
>My landusea_region table:
>Field Type
>gid int4
>polygon_id int8
>name varchar
>langcode varchar
>type varchar
>city varchar
>the_geom geometry
>
But it's not enough!
I found another trouble next step:
I try to perform view with a condition like:
[2]
test=> CREATE VIEW v_pG_w AS SELECT t0.oid, t0.* FROM landusea_region t0
where gid < 10;
CREATE VIEW
or
[3]
test=> CREATE VIEW v_land_t AS SELECT t0.oid, t0.*, num_pop FROM
landusea_region t0, tab_zu where t0.name= tab_zu.nm;
CREATE VIEW
-- both run OK in psql & in phpPgAdmin
Instead doesn't work with this mapfile:
LAYER
NAME LandUseA_region
# DATA LandUseA_region # original shape
file -- work fine
CONNECTIONTYPE postgis
CONNECTION "user=pg_user password=pg_passwd dbname=test host=linux_box"
# DATA "the_geom from landusea_region" # OK (table from shp2pgsql)
# DATA "the_geom from only_pg_land_use" # OK (view from previous
tab with oid column) [1]
DATA "the_geom from v_pg_w" # NO ERROR NO
DISPLAY [2]
# DATA "the_geom from v_land_t" # NO ERROR NO
DISPLAY [3]
When I run mapserver I've map with all layer less LandUseA_region layer
and It's very strange there isn't any error!?
It's a big problem because only in [2] I can use FILTER in mapfile, but
in [3] I need to perform where condition before mapfile in order to
obtain data from another table.
I think that where condition lose geometry data type. It's right? How
can resolve [3]?
Have you any advice?
Thanks in advance
--
opengis (at) libero (dot) it
AOL: open2gis
More information about the postgis-users
mailing list