Dear GRASS community,
can somebody tell me why the UPDATE operation works with a simple
assignement like in:
echo "UPDATE soils SET area=1000 WHERE area > 200"| db.execute
but return an error with any kind of operation like for example:
echo "UPDATE soils SET area=area+1 WHERE area > 200"| db.execute
or even simply:
echo "UPDATE soils SET area=1+1 WHERE area > 200"| db.execute
The output error is:
DBMI-DBF driver error:
SQL parser error in statement:
UPDATE suoli SET area=area+1 WHERE area > 200"
Error in db_execute_immediate ()
ERROR: Error while executing: "UPDATE suoli SET area=area+1 WHERE area > 200
"
On Mon, 27 Jun 2005 10:43:02 +0200
"Aldo Clerici" <alcl01@ipruniv.cce.unipr.it> wrote:
Dear GRASS community,
can somebody tell me why the UPDATE operation works with a simple
assignement like in:
echo "UPDATE soils SET area=1000 WHERE area > 200"| db.execute
but return an error with any kind of operation like for example:
echo "UPDATE soils SET area=area+1 WHERE area > 200"| db.execute
or even simply:
echo "UPDATE soils SET area=1+1 WHERE area > 200"| db.execute
The output error is:
DBMI-DBF driver error:
SQL parser error in statement:
UPDATE suoli SET area=area+1 WHERE area > 200"
Error in db_execute_immediate ()
ERROR: Error while executing: "UPDATE suoli SET area=area+1 WHERE area > 200
"
Only a limited set of SQL functions and operators are currently supported.
> Dear GRASS community,
> can somebody tell me why the UPDATE operation works with a simple
> assignement like in:
> echo "UPDATE soils SET area=1000 WHERE area > 200"| db.execute
> but return an error with any kind of operation like for example:
> echo "UPDATE soils SET area=area+1 WHERE area > 200"| db.execute
> or even simply:
> echo "UPDATE soils SET area=1+1 WHERE area > 200"| db.execute
>
> The output error is:
> DBMI-DBF driver error:
> SQL parser error in statement:
> UPDATE suoli SET area=area+1 WHERE area > 200"
> Error in db_execute_immediate ()
> ERROR: Error while executing: "UPDATE suoli SET area=area+1 WHERE area > 200
> "
Only a limited set of SQL functions and operators are currently supported.
That page is somewhere between misleading and inaccurate.
First, it appears to relate specifically to the DBF driver, although
it doesn't say so.
Second, arithmetic expressions are supported, but only WHERE clauses,
not in SET clauses.
Given that the DBF driver already has the ability to evaluate
arithmetic expressions, it wouldn't be a lot of work to allow
expressions on the RHS of SET clauses. However, this would require
changes to the DBF driver.
On Mon, 27 Jun 2005 10:43:02 +0200
"Aldo Clerici" <alcl01@ipruniv.cce.unipr.it> wrote:
Dear GRASS community,
can somebody tell me why the UPDATE operation works with a simple
assignement like in:
echo "UPDATE soils SET area=1000 WHERE area > 200"| db.execute
but return an error with any kind of operation like for example:
echo "UPDATE soils SET area=area+1 WHERE area > 200"| db.execute
or even simply:
echo "UPDATE soils SET area=1+1 WHERE area > 200"| db.execute
The output error is:
DBMI-DBF driver error:
SQL parser error in statement:
UPDATE suoli SET area=area+1 WHERE area > 200"
Error in db_execute_immediate ()
ERROR: Error while executing: "UPDATE suoli SET area=area+1 WHERE area > 200
"
Only a limited set of SQL functions and operators are currently supported.
>>Dear GRASS community,
>>can somebody tell me why the UPDATE operation works with a simple
>>assignement like in:
>>echo "UPDATE soils SET area=1000 WHERE area > 200"| db.execute
>>but return an error with any kind of operation like for example:
>>echo "UPDATE soils SET area=area+1 WHERE area > 200"| db.execute
>>or even simply:
>>echo "UPDATE soils SET area=1+1 WHERE area > 200"| db.execute
>>
>>The output error is:
>>DBMI-DBF driver error:
>>SQL parser error in statement:
>>UPDATE suoli SET area=area+1 WHERE area > 200"
>>Error in db_execute_immediate ()
>>ERROR: Error while executing: "UPDATE suoli SET area=area+1 WHERE area > 200
>>"
>
>
>
> Only a limited set of SQL functions and operators are currently supported.
>
> Addition is not among them.
>
> see the GRASS SQL help page:
> http://grass.ibiblio.org/grass61/manuals/html61_user/sql.html
Today I started the GRASS 6.0.0 tutorial. I tried to load the Spearfish60
mapset, but when I click on the PERMANENT mapset and clock 'Enter Grass', an
error message pops up: 'invalid mapset'. Any Ideas what I should do?
As far as I can tell this is a FAST format, which should be possible
to import with r.in.gdla. However, all my intents to import the files
have failed.
As far as I can tell this is a FAST format, which should be possible
to import with r.in.gdla. However, all my intents to import the files
have failed.
r.in.gdal is the correct module to use but you need to be more specific
about what the error was. Exact cut and paste of the error message is
preferable.
Today I started the GRASS 6.0.0 tutorial. I tried to load the Spearfish60
mapset, but when I click on the PERMANENT mapset and clock 'Enter Grass', an
error message pops up: 'invalid mapset'. Any Ideas what I should do?
For a start, don't try to use the PERMANENT mapset as the current
mapset.
The first time that you use a location, you should create a new
mapset.
On Mon, Jun 27, 2005 at 03:57:00PM +0200, s99171059@tuks.co.za wrote:
Dear reader
Today I started the GRASS 6.0.0 tutorial. I tried to load the Spearfish60
mapset, but when I click on the PERMANENT mapset and clock 'Enter Grass', an
error message pops up: 'invalid mapset'. Any Ideas what I should do?
Thank you
Kobus Bedeker
The settings must as follows:
GRASS database: directory which *contains* spearfish60
Location: spearfish60
Mapset: preferably create your own using the right "create" field
You can select PERMANENT mapset if you own it. Otherwise you can
use data stored in this mapsets from any other mapset created and
owned by you.