DESCRIPTION

v.in.db creates a new vector (points) map from database table containing coordinates.

EXAMPLE

1) Creating a map from PostgreSQL table:

v.in.db driver=pg database="host=myserver.itc.it,dbname=mydb" \
        table=pat_stazioni x=east y=north z=quota key=id output=pat_stazioni

If an ID column is not present in the PostgreSQL table, a new column should be added. See pg driver page for detail.

2) Creating a map from PostGIS:

To extract coordinate values from PostGIS, functions have to be used:
v.in.db driver=pg database="host=myserver.itc.it,dbname=mydb" \
        table=station x="x(geom)" y="y(geom)" z="z(geom)" key=id out=meteostations

If an ID column is not present in the PostgreSQL table, a new column should be added. See pg driver page for detail.

3) Import of a points table (x, y, z) from DBF file to vector points map:

#create vector map from DBF table (here, 'idcol' contains unique row IDs, 'z' is optional):
#the 'database' parameter is the directory where the DBF file is stored:
v.in.db driver=dbf database=/home/user/tables/ table=pointsfile x=x y=y z=z \
        key=idcol out=dtmpoints

#check result:
v.info dtmpoints
v.info -c dtmpoints

If an ID column is missing in the DBF file, it has to be added beforehand, e.g. with OpenOffice. Alternatively, import the table with db.in.ogr into GRASS and then with v.in.db from the imported table (db.in.ogr optionally adds an unique ID column).

4) Import of a points table (x, y, z) from SQLite file to vector points map:

#create vector map from table in SQLITE database file (here, 'idcol' contains unique row IDs, 'z' is optional):
#the 'database' parameter is the the SQLite database file with path:
v.in.db driver=sqlite database=/home/user/tables/mysqlite.db table=pointsfile x=x y=y z=z \
        key=idcol out=dtmpoints

#check result:
v.info dtmpoints
v.info -c dtmpoints

If an ID column is missing in the table, it has to be added beforehand with 'sqlite3' or db.execute.

5) Import of a points table (x, y, z) from DBF file to vector points map for selected points only:

The user can import only selected vector points from a table using the where parameter (see above for general DBF handling):

v.in.db driver=dbf  database=/home/user/tables/ table=pointsfile x=x y=y z=z \
        key=idcol out=dtmpoints where="x NOT NULL and z > 100"

SEE ALSO

db.execute, db.in.ogr, v.info, v.in.ogr, v.to.db

SQL support in GRASS GIS

AUTHOR

Radim Blazek

Last changed: $Date$