[GRASS5] 5.1: map/table name restrictions due to SQL

Radim Blazek blazek at itc.it
Tue Feb 18 03:09:20 EST 2003


On Monday 17 February 2003 09:12 pm, Glynn Clements wrote:
> > 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.

Tables are persistent. We can look at table as part of the vector
which is not stored (usually) in vector directory but in RDBMS (usually).
I also like dots in map names, but I don't see any reasonable solution.
(BTW: also '-' is not allowed)

> Possible alternatives would include:
>
> a) storing the table name(s) in a file associated with the map (i.e.
> as a map component), or

Table names ARE stored in file (<mapset>/vector/<name>/dbln)

> b) an SQL table which contains the mapping between table names and map
> names.

Currently the table name generated by module is the same as vector name.
Additional option for table name for each module is not practical.
We could generate the name from vector name and replace problematic 
characters, but then everything becomes very confusing for users when
they want to access data in table through some other client 
(psql, isql, OpenOffice, ...), which I thing, is quite usual.

Radim




More information about the grass-dev mailing list