Interesting.  So if I do it as you've suggested, how do I get a polygon constraint on the new column as normally present with,<div><br></div><div>alter table xxx add column boundary geography(POLYGON, 4326);<br><br></div>
<div><br><div class="gmail_quote">On Thu, Apr 15, 2010 at 1:08 AM, Paul Ramsey <span dir="ltr"><<a href="mailto:pramsey@cleverelephant.ca">pramsey@cleverelephant.ca</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
Don't update a 250M row table, do<br>
<br>
create newtable as select *,geography(the_geom) as geog from oldtable;<br>
drop oldtable;<br>
alter table newtable rename to newtable;<br>
<br>
Even with indexes and constraints dropped, the cost of updating all<br>
those rows in a transactional context is very very high. If you don't<br>
mind taking some extra risks, you can also<br>
<br>
set fsync=off;<br>
<br>
before you start and turn it back on when you're done.<br>
<font color="#888888"><br>
P<br>
</font><div><div></div><div class="h5"><br>
On Tue, Apr 13, 2010 at 11:03 PM, Nicholas Bower <<a href="mailto:nick@petangent.net">nick@petangent.net</a>> wrote:<br>
> Ok thanks - so this is really my solution by the looks;<br>
> UPDATE mytable SET new_geog_col = geography(ST_SetSRID(old_geom_col, 4326));<br>
> Be curious to see how it performs on a quarter billion rows - hopefully<br>
> should be fine with constraints/indexes dropped as usual.<br>
><br>
> On Wed, Apr 14, 2010 at 3:50 PM, Paragon Corporation <<a href="mailto:lr@pcorp.us">lr@pcorp.us</a>> wrote:<br>
>><br>
>> You mean ST_SetSRID :)<br>
>><br>
>> R<br>
>> -----Original Message-----<br>
>> From: <a href="mailto:postgis-users-bounces@postgis.refractions.net">postgis-users-bounces@postgis.refractions.net</a><br>
>> [mailto:<a href="mailto:postgis-users-bounces@postgis.refractions.net">postgis-users-bounces@postgis.refractions.net</a>] On Behalf Of Paul<br>
>> Ramsey<br>
>> Sent: Tuesday, April 13, 2010 11:59 PM<br>
>> To: PostGIS Users Discussion<br>
>> Subject: Re: [postgis-users] Conversion from undefined geometry to<br>
>> geography?<br>
>><br>
>> Just use geography(the_geom), it'll work fine. If you fine you have srid<br>
>> issues (I don't think you should) use<br>
>> geography(setsrid(the_geom,4326))<br>
>><br>
>> P<br>
>><br>
>> On Tue, Apr 13, 2010 at 8:47 PM, Nicholas Bower <<a href="mailto:nick@petangent.net">nick@petangent.net</a>><br>
>> wrote:<br>
>> > We have some tables in which we've used Geometry to store polygon and<br>
>> > point lan/lon (srid = -1).  We embarked on this before PostGIS 1.5.x's<br>
>> > spherical Geography objects.<br>
>> > Now we intend to upgrade and migrate these to new Geography types (eg<br>
>> > new geography col, copy/convert, drop original geometry col).<br>
>> > Is there an existing function that provides a conversion from Geometry<br>
>> > to Geography that could be used in a simple table update?  This<br>
>> > doesn't give away too many clues what will happen when given a<br>
>> > geometry with srid = -1 for example:<br>
>> > <a href="http://postgis.refractions.net/docs/geography.html" target="_blank">http://postgis.refractions.net/docs/geography.html</a><br>
>> > TIA.<br>
>> ><br>
>> ><br>
>> > _______________________________________________<br>
>> > postgis-users mailing list<br>
>> > <a href="mailto:postgis-users@postgis.refractions.net">postgis-users@postgis.refractions.net</a><br>
>> > <a href="http://postgis.refractions.net/mailman/listinfo/postgis-users" target="_blank">http://postgis.refractions.net/mailman/listinfo/postgis-users</a><br>
>> ><br>
>> ><br>
>> _______________________________________________<br>
>> postgis-users mailing list<br>
>> <a href="mailto:postgis-users@postgis.refractions.net">postgis-users@postgis.refractions.net</a><br>
>> <a href="http://postgis.refractions.net/mailman/listinfo/postgis-users" target="_blank">http://postgis.refractions.net/mailman/listinfo/postgis-users</a><br>
>><br>
>><br>
>> _______________________________________________<br>
>> postgis-users mailing list<br>
>> <a href="mailto:postgis-users@postgis.refractions.net">postgis-users@postgis.refractions.net</a><br>
>> <a href="http://postgis.refractions.net/mailman/listinfo/postgis-users" target="_blank">http://postgis.refractions.net/mailman/listinfo/postgis-users</a><br>
><br>
><br>
> _______________________________________________<br>
> postgis-users mailing list<br>
> <a href="mailto:postgis-users@postgis.refractions.net">postgis-users@postgis.refractions.net</a><br>
> <a href="http://postgis.refractions.net/mailman/listinfo/postgis-users" target="_blank">http://postgis.refractions.net/mailman/listinfo/postgis-users</a><br>
><br>
><br>
_______________________________________________<br>
postgis-users mailing list<br>
<a href="mailto:postgis-users@postgis.refractions.net">postgis-users@postgis.refractions.net</a><br>
<a href="http://postgis.refractions.net/mailman/listinfo/postgis-users" target="_blank">http://postgis.refractions.net/mailman/listinfo/postgis-users</a><br>
</div></div></blockquote></div><br></div>