## 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: dbf,odbc,ogr,pg,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 < 1000 and inhab >= 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 (ne, 11 V 2014) $

Main index - vector index - Full index

© 2003-2014 GRASS Development Team