[GRASS-dev] db function needed to check if column exists in table
Markus Neteler
neteler at osgeo.org
Mon Jan 30 05:38:33 EST 2012
Hi
to my knowledge no DBMI function exists yet to check if a column exists
in (vector) table.
Suggestions:
db_get_column(driver, hcolumn,key, &column);
if (!column)
G_fatal_error(_("Missing column <%s> in table <%s>"), hcolumn, table);
Or this one (used in r50492, here modified):
if ((col_type =
db_column_Ctype(Driver, table, column)) == -1)
G_fatal_error(_("Column <%s> not found in table <%s>"),
column, table);
I am not familiar enough with DBMI but do see the need to have such a function.
Rationale: the SQLite backend happily accepts nonsensical names and the test
should become a single line rather than the currently used workarounds in
v.to.rast/support.c or v.extrude/main.c or the like.
Markus
More information about the grass-dev
mailing list