Scroll to navigation

v.in.db(1grass) Grass User's Manual v.in.db(1grass)

NAME

v.in.db - Creates new vector (points) map from database table containing coordinates.

KEYWORDS

vector, import, database, points

SYNOPSIS

v.in.db
 
v.in.db help
 
v.in.db table=name [driver=name] [database=name] x=name y=name [z= name] key=name [where=sql_query] output=name [--overwrite] [--verbose] [--quiet]

Flags:

--overwrite
 
Allow output files to overwrite existing files
--verbose
 
Verbose module output
--quiet
 
Quiet module output

Parameters:

table=name
 
Input table name
driver=name
 
Driver name
 
Options: pg,dbf,ogr,odbc,mysql,sqlite
 
Default: dbf
database=name
 
Database name
 
Default: $GISDBASE/$LOCATION_NAME/$MAPSET/dbf/
x=name
 
Name of column containing x coordinate
y=name
 
Name of column containing y coordinate
z=name
 
Name of column containing z coordinate
key=name
 
Name of column containing category number
 
Must refer to an integer column
where=sql_query
 
WHERE conditions of SQL statement without 'where' keyword
 
Example: income = 10000
output=name
 
Name for output vector map

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: 2014-05-11 23:13:16 +0200 (Sun, 11 May 2014) $
Full index
© 2003-2014 GRASS Development Team
GRASS 6.4.4