[postgis-users] Win32 PostgreSQL: pgsql75win.zip replacement
Dan R Greening
greening at bigtribe.com
Wed Aug 18 06:56:39 PDT 2004
Mark,
Thanks. It works!
One thing missing from your distribution (included in the PostgreSQL
8.0beta1 distribution) is the pgAdmin III application. Kind of a handy
thing.
Dan Greening, Ph.D. CEO BigTribe http://dan.greening.name/contact.htm
> -----Original Message-----
> From: Mark Cave-Ayland [mailto:m.cave-ayland at webbased.co.uk]
> Sent: Tuesday, August 17, 2004 10:24 AM
> To: 'PostGIS Users Discussion'
> Cc: greening at bigtribe.com
> Subject: RE: [postgis-users] Win32 PostgreSQL: pgsql75win.zip
> replacement
>
>
> > -----Original Message-----
> > From: postgis-users-bounces at postgis.refractions.net
> > [mailto:postgis-users-bounces at postgis.refractions.net] On Behalf Of
> > Dan R Greening
> > Sent: 17 August 2004 16:50
> > To: 'PostGIS Users Discussion'
> > Subject: RE: [postgis-users] Win32 PostgreSQL: pgsql75win.zip
> > replacement
> >
> >
> > So I tried it with my test.sql code, which consists of:
> >
> > CREATE TABLE poiloc (
> > poiid varchar(11) NOT NULL UNIQUE,
> > latitude DOUBLE PRECISION NOT NULL,
> > longitude DOUBLE PRECISION NOT NULL,
> > PRIMARY KEY (poiid)
> > );
> > CREATE INDEX lat_index ON poiloc (latitude,longitude); CREATE INDEX
> > lon_index ON poiloc (longitude,latitude); INSERT INTO
> poiloc (poiid,
> > latitude, longitude) VALUES ('27165',37.766029,-122.430382); INSERT
> > INTO poiloc (poiid, latitude, longitude) VALUES
> > ('11',37.764894,-122.423022); INSERT INTO poiloc (poiid, latitude,
> > longitude) VALUES ('12',37.764829,-122.423882); INSERT INTO poiloc
> > (poiid, latitude, longitude) VALUES ('18',37.762529,-122.396481);
> > INSERT INTO poiloc (poiid, latitude, longitude) VALUES
> > ('19',37.761829,-122.418282); INSERT INTO poiloc (poiid, latitude,
> > longitude) VALUES ('25',37.790508,-122.398332); INSERT INTO poiloc
> > (poiid, latitude, longitude) VALUES ('26',37.788028,-122.395281);
> > SELECT
> AddGeometryColumn(current_schema(),'poiloc','geom',-1,'POINT',
> > 2); UPDATE poiloc set geom = GeometryFromText('POINT(' ||
> latitude ||
> > ' ' || longitude || ')', -1); CREATE INDEX geom_idx ON poiloc USING
> > GIST(geom gist_geometry_ops); select poiid from poiloc
> where geom &&
> > GeometryFromText('BOX3D(37.76930 -122.40798,37.78929
> -122.38621)',-1);
> >
> > And the first SELECT fails with this error:
> >
> > psql.exe:/greening/dev/poi/sql/postgres/test.sql:16: ERROR:
> > function addgeometrycolumn(name, "unknown", "unknown", integer,
> > "unknown", integer) does not exist
> > HINT: No function matches the given name and argument types.
> > You may need to add explicit type casts.
> > psql.exe:/greening/dev/poi/sql/postgres/test.sql:17: ERROR:
> > column "geom" of relation "poiloc" does not exist
> > psql.exe:/greening/dev/poi/sql/postgres/test.sql:18: ERROR:
> > column "geom" does not exist
> > psql.exe:/greening/dev/poi/sql/postgres/test.sql:19: ERROR:
> > column "geom" does not exist gistest=#
> >
> > Am I doing something wrong?
> >
> > Dan Greening, Ph.D. CEO BigTribe
> > http://dan.greening.name/contact.htm
>
>
> Hi Dan,
>
> I managed to recreate your problem here. It looks like
> current_schema() is defined in the system catalog as type
> 'name' instead of one of the text types (varchar or text) -
> the quick solution is to cast
> current_schema() to a text type before passing it to
> AddGeometryColumn(), e.g.:
>
> SELECT
> AddGeometryColumn(current_schema()::text,'poiloc','geom',-1,'P
> OINT', 2);
>
> Note that you should do a VACUUM ANALYZE after performing a
> large UPDATE in order to calculate the correct statistics for
> the planner, but other than that, your script looks fine. I
> don't know yet whether this is just a Win32 problem or a
> PostgreSQL 8.0 problem - I will try and look at it when I
> find some free time over the next few weeks.
>
>
> Kind regards,
>
> Mark.
>
> ---
>
> Mark Cave-Ayland
> Webbased Ltd.
> Tamar Science Park
> Derriford
> Plymouth
> PL6 8BX
> England
>
> Tel: +44 (0)1752 764445
> Fax: +44 (0)1752 764446
>
>
> This email and any attachments are confidential to the
> intended recipient and may also be privileged. If you are not
> the intended recipient please delete it from your system and
> notify the sender. You should not copy it or use it for any
> purpose nor disclose or distribute its contents to any other person.
>
>
>
More information about the postgis-users
mailing list