---
name: "db.copy"
section: "1grass"
platform: "linux"
package: "grass-doc"
version: "8.4.1-1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/db.copy"
---

# db.copy(1grass)

Copy a table. Either ’from\_table’ (optionally with ’where’) can be used or ’select’ option, but not ’from\_table’ and ’select’ at the same time.

## NAME

**db.copy**  - Copy a table.\
 Either ’from\_table’ (optionally with ’where’) can be used or ’select’ option, but not ’from\_table’ and ’select’ at the same time.

## KEYWORDS

database, attribute table, SQL

## SYNOPSIS

**db.copy**\
 **db.copy --help**\
 **db.copy**  \[**from\_driver**=*name*\]   \[**from\_database**=*name*\]   \[**from\_table**=*name*\]   \[**to\_driver**=*name*\]   \[**to\_database**=*name*\]  **to\_table**=*name*  \[**where**=*sql\_query*\]   \[**select**=*string*\]   \[--**overwrite**\]  \[--**help**\]  \[--**verbose**\]  \[--**quiet**\]  \[--**ui**\]

### Flags:

- **--overwrite**

  Allow output files to overwrite existing files

- **--help**

  Print usage summary

- **--verbose**

  Verbose module output

- **--quiet**

  Quiet module output

- **--ui**

  Force launching GUI dialog

### Parameters:

- **from\_driver**=*name*

  Input driver name\
   Options: *dbf, mysql, odbc, ogr, pg, sqlite*\
   Default: *sqlite*

- **from\_database**=*name*

  Input database name\
   Default: *$GISDBASE/$LOCATION\_NAME/$MAPSET/sqlite/sqlite.db*

- **from\_table**=*name*

  Input table name (only, if ’select’ is not used)

- **to\_driver**=*name*

  Output driver name\
   Options: *dbf, mysql, odbc, ogr, pg, sqlite*\
   Default: *sqlite*

- **to\_database**=*name*

  Output database name\
   Default: *$GISDBASE/$LOCATION\_NAME/$MAPSET/sqlite/sqlite.db*

- **to\_table**=*name* **\[required\]**

  Output table name

- **where**=*sql\_query*

  WHERE conditions of SQL statement without ’where’ keyword\
   Example: income \< 1000 and population \>= 10000

- **select**=*string*

  Full select statement (only, if ’from\_table’ and ’where’ is not used)\
   E.g.: SELECT dedek FROM starobince WHERE obec = ’Frimburg’

## DESCRIPTION

*db.copy* allows the user to copy a table between two databases. Databases can be connected through different drivers (see examples below).

## NOTES

Attribute tables can be copied using *db.copy* and, when to be associated to a vector map, assigned to the map with *v.db.connect*. Current connection settings are saved in the file *$LOCATION/vector\_map/dbln*.

## EXAMPLES

### From DBF to PostgreSQL

*Storing table ’geonames.dbf’ (in current directory) into PostgreSQL* *through ODBC:*\
\

```
db.copy from_driver=dbf from_database=’$GISDBASE/$LOCATION_NAME/PERMANENT/dbf’ \
  from_table=geonames to_driver=pg to_database="host=pgserver,dbname=testdb" \
  to_table=geonames
```

### From PostgreSQL to DBF

```
db.copy from_driver=pg  from_database="host=pgserver.example.org,dbname=testdb" \
  from_table=origtable to_driver=dbf \
  to_database=’$GISDBASE/$LOCATION_NAME/$MAPSET/dbf’ to_table=origtable
```

### From PostgreSQL to PostgreSQL with condition

```
db.copy from_driver=pg  from_database="host=localhost,dbname=testdb" \
  from_table=geonames to_driver=pg to_database="host=localhost,dbname=testdb" \
  to_table=selection where="cat < 500"
```

### From DBF to SQLite

```
db.copy from_driver=dbf from_database=’$GISDBASE/$LOCATION_NAME/PERMANENT/dbf’ \
   from_table=geonames_features to_driver=sqlite \
   to_database=’$GISDBASE/$LOCATION_NAME/$MAPSET/sqlite/sqlite.db’ to_table=geonames_features
# convenient viewer:
sqlitebrowser $HOME/grassdata/nc_spm_08/user1/sqlite/sqlite.db
```

### From SQLite to DBF

```
db.copy from_driver=sqlite from_database=’$GISDBASE/$LOCATION_NAME/$MAPSET/sqlite/sqlite.db’ \
   from_table=ammprv to_driver=dbf to_database=’$GISDBASE/$LOCATION_NAME/$MAPSET/dbf/’ \
   to_table=ammprv
```

## SEE ALSO

*db.connect,* *db.drivers,* *db.login,* *v.db.connect,* *v.clean*

GRASS SQL interface

## AUTHOR

Radim Blazek, ITC-irst, Trento, Italy

## SOURCE CODE

Available at: db.copy source code (history)

Accessed: Monday Feb 24 17:50:22 2025

Main index \| Database index \| Topics index \| Keywords index \| Graphical index \| Full index

© 2003-2025 GRASS Development Team, GRASS GIS 8.4.1 Reference Manual
