db.describe(1grass)

πŸ’– NAME πŸ’–

okay bestie, gather round β€” db.describe is here to Describe a table in detail. that's it, that's the whole job, and it does it gorgeously ✨


🌈 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 just the column names instead of the full column descriptions (she's minimal, she's chic πŸ’…)
  • --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, mysql, odbc, 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, periodt. and if you pass the -c parameter, you get only column names instead of the full column descriptions β€” like, the tl;dr version of the table. iconic. πŸ‘‘


πŸ’‘ NOTE πŸ’‘

ngl this is the part that saves your life: if the parameters for the database connection are already set with db.connect, then they get taken as default values and you do not need to type them out every single time. bestie behavior fr fr 🫢


🧚 EXAMPLES 🧚

Listing columns in SQLite

list column descriptions of a table in a SQLite database (and note that this is the default setting, so like, you basically get it for free):

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

go read those next bestie, they're all part of the same little database friend group πŸ’œ


πŸ‘‘ 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


and that's the whole page, no cap πŸ’… this was the db.describe(1grass) page from the GRASS User's Manual, version GRASS 8.5.0, last touched Thursday Oct 02 14:39:13 2025 β€” love that for us, slay, periodt πŸŽ€βœ¨πŸ¦‹

πŸ“¦ where this page comes from