GRASS Programmer's Manual  6.5.svn(2014)-r66266
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
dbmi_base/column.c
Go to the documentation of this file.
1 #include <stdlib.h>
2 #include <string.h>
3 #include <grass/gis.h>
4 #include <grass/dbmi.h>
5 
11 dbColumn *db_get_table_column(dbTable * table, int n)
12 {
13  if (n < 0 || n >= table->numColumns)
14  return ((dbColumn *) NULL);
15  return &table->columns[n];
16 }
17 
23 dbValue *db_get_column_value(dbColumn * column)
24 {
25  return &column->value;
26 }
27 
33 dbValue *db_get_column_default_value(dbColumn * column)
34 {
35  return &column->defaultValue;
36 }
37 
44 void db_set_column_sqltype(dbColumn * column, int sqltype)
45 {
46  column->sqlDataType = sqltype;
47 }
48 
54 void db_set_column_host_type(dbColumn * column, int type)
55 {
56  column->hostDataType = type;
57 }
58 
64 int db_get_column_scale(dbColumn * column)
65 {
66  return column->scale;
67 }
68 
74 void db_set_column_scale(dbColumn * column, int scale)
75 {
76  column->scale = scale;
77 }
78 
84 int db_get_column_precision(dbColumn * column)
85 {
86  return column->precision;
87 }
88 
94 void db_set_column_precision(dbColumn * column, int precision)
95 {
96  column->precision = precision;
97 }
98 
105 int db_get_column_sqltype(dbColumn * column)
106 {
107  return column->sqlDataType;
108 }
109 
110 int db_get_column_host_type(dbColumn * column)
111 {
112  return column->hostDataType;
113 }
114 
121 {
122  column->hasDefaultValue = 1;
123 }
124 
131 {
132  column->hasDefaultValue = 0;
133 }
134 
140 void db_unset_column_has_default_value(dbColumn * column)
141 {
142  column->hasDefaultValue = 0;
143 }
144 
150 int db_test_column_has_default_value(dbColumn * column)
151 {
152  return (column->hasDefaultValue != 0);
153 }
154 
161 {
162  return (column->hasDefaultValue);
163 }
164 
171 {
172  return (!column->hasDefaultValue);
173 }
174 
180 void db_set_column_use_default_value(dbColumn * column)
181 {
182  column->useDefaultValue = 1;
183 }
184 
190 void db_unset_column_use_default_value(dbColumn * column)
191 {
192  column->useDefaultValue = 0;
193 }
194 
200 int db_test_column_use_default_value(dbColumn * column)
201 {
202  return (column->useDefaultValue != 0);
203 }
204 
210 void db_set_column_null_allowed(dbColumn * column)
211 {
212  column->nullAllowed = 1;
213 }
214 
220 void db_unset_column_null_allowed(dbColumn * column)
221 {
222  column->nullAllowed = 0;
223 }
224 
230 int db_test_column_null_allowed(dbColumn * column)
231 {
232  return (column->nullAllowed != 0);
233 }
234 
240 int db_get_column_length(dbColumn * column)
241 {
242  return column->dataLen;
243 }
244 
250 void db_set_column_length(dbColumn * column, int length)
251 {
252  column->dataLen = length;
253 }
254 
260 void db_set_column_select_priv_granted(dbColumn * column)
261 {
262  column->select = DB_GRANTED;
263 }
264 
271 {
272  column->select = DB_NOT_GRANTED;
273 }
274 
280 int db_get_column_select_priv(dbColumn * column)
281 {
282  return column->select;
283 }
284 
290 void db_set_column_update_priv_granted(dbColumn * column)
291 {
292  column->update = DB_GRANTED;
293 }
294 
301 {
302  column->update = DB_NOT_GRANTED;
303 }
304 
310 int db_get_column_update_priv(dbColumn * column)
311 {
312  return column->update;
313 }
314 
320 void db_init_column(dbColumn * column)
321 {
322  db_zero((void *)column, sizeof(dbColumn));
323  db_init_string(&column->columnName);
324  db_init_string(&column->description);
325  db_init_string(&column->value.s);
326  db_init_string(&column->defaultValue.s);
327 }
328 
334 int db_set_column_name(dbColumn * column, const char *name)
335 {
336  return db_set_string(&column->columnName, name);
337 }
338 
344 const char *db_get_column_name(dbColumn * column)
345 {
346  return db_get_string(&column->columnName);
347 }
348 
354 int db_set_column_description(dbColumn * column, const char *description)
355 {
356  return db_set_string(&column->description, description);
357 }
358 
364 const char *db_get_column_description(dbColumn * column)
365 {
366  return db_get_string(&column->description);
367 }
368 
374 void db_free_column(dbColumn * column)
375 {
376  db_free_string(&column->columnName);
377  db_free_string(&column->value.s);
378  /* match init? */
379  db_free_string(&column->description);
380  db_free_string(&column->defaultValue.s);
381 }
dbColumn * db_get_table_column(dbTable *table, int n)
returns column structure for given table and column number
void db_set_column_sqltype(dbColumn *column, int sqltype)
define column sqltype for column (the function db_sqltype_name() returns sqltype description) ...
const char * db_get_column_description(dbColumn *column)
returns column description for given column
void db_set_column_precision(dbColumn *column, int precision)
const char * db_get_column_name(dbColumn *column)
returns column name for given column
void db_set_column_select_priv_granted(dbColumn *column)
void db_set_column_select_priv_not_granted(dbColumn *column)
string name
Definition: render.py:1314
void db_set_column_has_defined_default_value(dbColumn *column)
int db_get_column_update_priv(dbColumn *column)
int db_get_column_precision(dbColumn *column)
void db_init_column(dbColumn *column)
int db_get_column_select_priv(dbColumn *column)
int db_get_column_length(dbColumn *column)
dbValue * db_get_column_default_value(dbColumn *column)
returns column default value for given column structure
void db_unset_column_use_default_value(dbColumn *column)
int db_get_column_scale(dbColumn *column)
int db_set_column_name(dbColumn *column, const char *name)
int db_set_column_description(dbColumn *column, const char *description)
void db_unset_column_null_allowed(dbColumn *column)
int db_test_column_use_default_value(dbColumn *column)
void db_set_column_use_default_value(dbColumn *column)
int db_get_column_sqltype(dbColumn *column)
returns column sqltype for column (the function db_sqltype_name() returns sqltype description) ...
void db_set_column_length(dbColumn *column, int length)
dbValue * db_get_column_value(dbColumn *column)
returns column value for given column structure
int db_test_column_has_default_value(dbColumn *column)
void db_set_column_host_type(dbColumn *column, int type)
int db_test_column_has_defined_default_value(dbColumn *column)
return NULL
Definition: dbfopen.c:1394
void db_set_column_scale(dbColumn *column, int scale)
void db_set_column_update_priv_granted(dbColumn *column)
int db_test_column_has_undefined_default_value(dbColumn *column)
char * db_get_string(dbString *x)
Definition: string.c:131
void db_zero(void *s, int n)
int db_set_string(dbString *x, const char *s)
Definition: string.c:33
void db_unset_column_has_default_value(dbColumn *column)
void db_set_column_update_priv_not_granted(dbColumn *column)
int db_test_column_null_allowed(dbColumn *column)
void db_set_column_null_allowed(dbColumn *column)
void db_set_column_has_undefined_default_value(dbColumn *column)
void db_free_string(dbString *x)
Definition: string.c:142
int db_get_column_host_type(dbColumn *column)
int n
Definition: dataquad.c:291
void db_free_column(dbColumn *column)
frees column structure
void db_init_string(dbString *x)
Definition: string.c:11