## NAME

db.describe - Describes a table in detail.

## KEYWORDS

database, json, attribute table

## SYNOPSIS

db.describe
db.describe --help
db.describe [-c] table=name [driver=name] [database=name] format=name [--help] [--verbose] [--quiet] [--ui]

### Flags:

-c
  Print column names only instead of full column descriptions
--help
  Print usage summary
--verbose
  Verbose module output
--quiet
  Quiet module output
--ui
  Force launching GUI dialog

### Parameters:

table=name [required]
  Name of attribute table
driver=name
  Name of database driver
  Options: dbf, ogr, pg, sqlite
  Default: sqlite
database=name
  Name of database
  Default: $GISDBASE/$LOCATION_NAME/$MAPSET/sqlite/sqlite.db
format=name [required]
  Output format
  Options: plain, json
  Default: plain
  plain: Plain text output
  json: JSON (JavaScript Object Notation)

## DESCRIPTION

db.describe displays table information. If parameter -c is used only column names instead of full column descriptions is given.

## NOTE

If parameters for database connection are already set with db.connect, they are taken as default values and do not need to be specified each time.

## EXAMPLES

List column descriptions of table in SQLite database (note that this is the default setting)

    db.describe driver=sqlite table=hospitals \
       database='$GISDBASE/$LOCATION_NAME/$MAPSET/sqlite/sqlite.db'

    # or simply
    db.describe myarchsites

### DBF example

    db.describe -c table=hospitals database='$GISDBASE/$LOCATION_NAME/PERMANENT/dbf/' \
                driver=dbf
    ncols: 16
    nrows: 160
    Column 1: cat:INTEGER:11
    Column 2: OBJECTID:INTEGER:11
    Column 3: AREA:DOUBLE PRECISION:20
    [...]

    db.describe table=hospitals database='$GISDBASE/$LOCATION_NAME/PERMANENT/dbf/' \
                driver=dbf
    table:hospitals
    description:
    insert:yes
    delete:yes
    ncols:16
    nrows:160

    column:cat
    description:
    type:INTEGER
    len:11
    scale:0
    precision:10
    default:
    nullok:yes
    select:yes
    update:yes

    column:OBJECTID
    description:
    type:INTEGER
    [...]

### JSON Output

    db.describe table=hospitals format=json

    {
        "table": "hospitals",
        "description": "",
        "insert": null,
        "delete": null,
        "ncols": 16,
        "nrows": 160,
        "columns": [
            {
                "position": 1,
                "column": "cat",
                "description": "",
                "type": "INTEGER",
                "length": 20,
                "scale": 0,
                "precision": 0,
                "default": null,
                "nullok": true,
                "select": null,
                "update": null
            },
            {
                "position": 2,
                "column": "OBJECTID",
                "description": "",
                "type": "INTEGER",
                "length": 20,
                "scale": 0,
                "precision": 0,
                "default": null,
                "nullok": true,
                "select": null,
                "update": null
            },
            {
                "position": 3,
                "column": "AREA",
                "description": "",
                "type": "DOUBLE PRECISION",
                "length": 20,
                "scale": 0,
                "precision": 0,
                "default": null,
                "nullok": true,
                "select": null,
                "update": null
            },
            {
                "position": 4,
                "column": "PERIMETER",
                "description": "",
                "type": "DOUBLE PRECISION",
                "length": 20,
                "scale": 0,
                "precision": 0,
                "default": null,
                "nullok": true,
                "select": null,
                "update": null
            },
            {
                "position": 5,
                "column": "HLS_",
                "description": "",
                "type": "INTEGER",
                "length": 20,
                "scale": 0,
                "precision": 0,
                "default": null,
                "nullok": true,
                "select": null,
                "update": null
            },
            {
                "position": 6,
                "column": "HLS_ID",
                "description": "",
                "type": "INTEGER",
                "length": 20,
                "scale": 0,
                "precision": 0,
                "default": null,
                "nullok": true,
                "select": null,
                "update": null
            },
            {
                "position": 7,
                "column": "NAME",
                "description": "",
                "type": "CHARACTER",
                "length": 45,
                "scale": 0,
                "precision": 0,
                "default": null,
                "nullok": true,
                "select": null,
                "update": null
            },
            {
                "position": 8,
                "column": "ADDRESS",
                "description": "",
                "type": "CHARACTER",
                "length": 35,
                "scale": 0,
                "precision": 0,
                "default": null,
                "nullok": true,
                "select": null,
                "update": null
            },
            {
                "position": 9,
                "column": "CITY",
                "description": "",
                "type": "CHARACTER",
                "length": 16,
                "scale": 0,
                "precision": 0,
                "default": null,
                "nullok": true,
                "select": null,
                "update": null
            },
            {
                "position": 10,
                "column": "ZIP",
                "description": "",
                "type": "CHARACTER",
                "length": 5,
                "scale": 0,
                "precision": 0,
                "default": null,
                "nullok": true,
                "select": null,
                "update": null
            },
            {
                "position": 11,
                "column": "COUNTY",
                "description": "",
                "type": "CHARACTER",
                "length": 12,
                "scale": 0,
                "precision": 0,
                "default": null,
                "nullok": true,
                "select": null,
                "update": null
            },
            {
                "position": 12,
                "column": "PHONE",
                "description": "",
                "type": "CHARACTER",
                "length": 14,
                "scale": 0,
                "precision": 0,
                "default": null,
                "nullok": true,
                "select": null,
                "update": null
            },
            {
                "position": 13,
                "column": "CANCER",
                "description": "",
                "type": "CHARACTER",
                "length": 4,
                "scale": 0,
                "precision": 0,
                "default": null,
                "nullok": true,
                "select": null,
                "update": null
            },
            {
                "position": 14,
                "column": "POLYGONID",
                "description": "",
                "type": "INTEGER",
                "length": 20,
                "scale": 0,
                "precision": 0,
                "default": null,
                "nullok": true,
                "select": null,
                "update": null
            },
            {
                "position": 15,
                "column": "SCALE",
                "description": "",
                "type": "DOUBLE PRECISION",
                "length": 20,
                "scale": 0,
                "precision": 0,
                "default": null,
                "nullok": true,
                "select": null,
                "update": null
            },
            {
                "position": 16,
                "column": "ANGLE",
                "description": "",
                "type": "DOUBLE PRECISION",
                "length": 20,
                "scale": 0,
                "precision": 0,
                "default": null,
                "nullok": true,
                "select": null,
                "update": null
            }
        ]
    }

## SEE ALSO

db.columns, db.droptable, db.execute, db.login, db.tables, GRASS SQL interface

## AUTHOR

Radim Blazek, ITC-Irst, Trento, Italy

## SOURCE CODE

Available at: db.describe source code (history)

Latest change: Thursday Oct 02 14:39:13 2025 in commit: 1850489bf42c72d8dcfe2e4db1738441b4a7dc43

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

© 2003-2026 GRASS Development Team, GRASS 8.5.0 Reference Manual