| From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> | 
|---|---|
| To: | sunpeng <bluevaley(at)gmail(dot)com> | 
| Cc: | pgsql-general(at)postgresql(dot)org | 
| Subject: | Re: how to get Point * from datum =heap_getattr(....)? | 
| Date: | 2010-05-15 21:47:39 | 
| Message-ID: | 18304.1273960059@sss.pgh.pa.us | 
| Views: | Whole Thread | Raw Message | Download mbox | Resend email | 
| Thread: | |
| Lists: | pgsql-general | 
sunpeng <bluevaley(at)gmail(dot)com> writes:
> hi,i have this table:
> CREATE TABLE pois(
>    uid integer not null,
>    name VARCHAR(128),
>    catcode VARCHAR(32)  not null,
>    catname VARCHAR(32),
>    others VARCHAR(32)
> );
> SELECT AddGeometryColumn('pois', 'location', 4214, 'POINT', 2);
> and then in my codes,i use this invoke to get location column in tuple:
> tuple = heap_getnext(pHeapScanDesc,
> ForwardScanDirection);
> datum = heap_getattr(tuple,6,pRawRelation->rd_att,&isnull);
> then on the next,how to write to get Point? is this right?
> Point *p = isnull?NULL:(Point *)(PG_DETOAST_DATUM(datum));
I'm not sure what the C-code type name is for geometry columns, but it's
definitely not Point --- that corresponds to the SQL type "point".
I'd suggest asking about this on the postgis mailing list.
regards, tom lane
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Tom Lane | 2010-05-15 21:51:13 | Re: Query memory usage | 
| Previous Message | Karl Denninger | 2010-05-15 19:55:10 | Re: Query memory usage |