[GRASS5] 5.1: map/table name restrictions due to SQL
Glynn Clements
glynn.clements at virgin.net
Mon Feb 17 15:12:15 EST 2003
Markus Neteler wrote:
> concerning 5.1 I were glad to receive some recommendations
> to following problem. GRASS 5.1 is using SQL internally
> which is rather restricted with table names
>
> Supported table name characters are:
> [A-Za-z][A-Za-z0-9_]*
>
> means:
> - must start with character
> - dots etc. are forbidden
>
> While the map names due to G_legal_filename() are quite
> flexible, the following must fail (note the dot in the out name):
>
> v.extract wdbtemp4 output=wdbtemp4.areas type=area list=1-10000
> Question is if we want to restrict the map names completely for
> GRASS to the SQL rules or find a better workaround...
It depends upon how SQL is being used. If the tables are only
temporary, then the table names don't need to correpond to the map
names; e.g. they could be dynamically generated.
If they are persistent, it would be better if they were at least
similar to the map name. However, I would suggest trying to find an
alternative to restricting map names; the use of dots (and possibly
other characters) in map names is well established.
Possible alternatives would include:
a) storing the table name(s) in a file associated with the map (i.e.
as a map component), or
b) an SQL table which contains the mapping between table names and map
names.
--
Glynn Clements <glynn.clements at virgin.net>
More information about the grass-dev
mailing list