[GRASS-user] v.db.join error
Patrick_schirmer
patrick_GIS at gmx.ch
Wed Dec 1 10:29:02 EST 2010
Hi, me again :-/
I got two vectorfiles with points - one file representing the current
location of persons and the other one representing previous locations of
the same persons. Persons are unique and have an id which is present in
both files. I would like to calculate the distance each person has
moved. Thought it would be best doing this in the datbase.
_my approach:_
v.db.addcolumn map=GR_xy_current col="x_current double precision,
y_current double precision, distance double precision"
v.db.addcolumn map=GR_xy_last col="x_last double precision, y_last
double precision"
v.to.db map=GR_xy_current option=coor col=x_current,y_current
v.to.db map=GR_xy_last option=coor col=x_last,y_last
v.db.join map=GR_xy_current column=id otable=GR_xy_last ocolumn=id
_All commands will run except the last one, creating this error:_
DBMI-Postgres driver error:
Cannot execute:
ALTER TABLE GR_xy_current ADD COLUMN x_arbeit DOUBLE PRECISION(8)
ERROR: syntax error at or near "("
LINE 1: ... TABLE GR_xy_current ADD COLUMN x_arbeit DOUBLE PRECISION(8)
^
ERROR: Error while executing: 'ALTER TABLE GR_xy_current ADD COLUMN
x_last DOUBLE PRECISION(8)'
ERROR: Unable to add column <x_last DOUBLE PRECISION(8)>.
ERROR: Error creating column <x_last>.
The value the coord "x" has it bigger than (8), which might be the
problem. But it is already in the table and I can't define it's length
in the command. Is that a problem of v.db.join or can I set the length
of the double_precision_field before creation through v.db.addcolumn?
Thanks for your hints!
Patrick
datbase: PG; Grass-version 7.0
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.osgeo.org/pipermail/grass-user/attachments/20101201/442b655c/attachment.html
More information about the grass-user
mailing list