GRASS 8 Programmer's Manual 8.6.0dev(2026)-4bb960b182
Loading...
Searching...
No Matches
xdrcolumn.c
Go to the documentation of this file.
1/*!
2 \file lib/db/dbmi_base/xdrcolumn.c
3
4 \brief DBMI Library (base) - external data representation (column)
5
6 SPDX-FileCopyrightText: 1999-2009, 2011 GRASS Development Team
7 SPDX-License-Identifier: GPL-2.0-or-later
8
9 \author Joel Jones (CERL/UIUC), Radim Blazek, Brad Douglas, Markus Neteler
10 \author Doxygenized by Martin Landa <landa.martin gmail.com> (2011)
11 */
12
13#include <grass/dbmi.h>
14#include "macros.h"
15
16/*!
17 \brief Send column definition
18
19 \param column pointer to dbColumn
20
21 \return DB_OK
22 */
24{
25 DB_SEND_STRING(&column->columnName);
26 DB_SEND_STRING(&column->description);
27 DB_SEND_INT(column->sqlDataType);
28 DB_SEND_INT(column->hostDataType);
29 DB_SEND_INT(column->precision);
30 DB_SEND_INT(column->scale);
31 DB_SEND_INT(column->dataLen);
32 DB_SEND_INT(column->select);
33 DB_SEND_INT(column->update);
34 DB_SEND_CHAR(column->nullAllowed);
35 DB_SEND_CHAR(column->useDefaultValue);
36 DB_SEND_CHAR(column->hasDefaultValue);
37 if (column->hasDefaultValue) {
39 }
40
41 return DB_OK;
42}
43
44/*!
45 \brief Receive column definition
46
47 \param column pointer to dbColumn
48
49 \return DB_OK
50 */
52{
53 DB_RECV_STRING(&column->columnName);
54 DB_RECV_STRING(&column->description);
55 DB_RECV_INT(&column->sqlDataType);
56 DB_RECV_INT(&column->hostDataType);
57 DB_RECV_INT(&column->precision);
58 DB_RECV_INT(&column->scale);
59 DB_RECV_INT(&column->dataLen);
60 DB_RECV_INT(&column->select);
61 DB_RECV_INT(&column->update);
62 DB_RECV_CHAR(&column->nullAllowed);
63 DB_RECV_CHAR(&column->useDefaultValue);
64 DB_RECV_CHAR(&column->hasDefaultValue);
65 if (column->hasDefaultValue) {
67 }
68
69 return DB_OK;
70}
71
72/*!
73 \brief Send column value
74
75 \param column pointer to dbColumn
76
77 \return
78 */
84
85/*!
86 \brief Receive column value
87
88 \param column pointer to dbColumn
89
90 \return
91 */
97
98/*!
99 \brief Send column default value
100
101 \param column pointer to dbColumn
102
103 \return
104 */
110
111/*!
112 \brief Receive column default value
113
114 \param column pointer to dbColumn
115
116 \return
117 */
Main header of GRASS DataBase Management Interface.
#define DB_OK
Definition dbmi.h:69
int db_sqltype_to_Ctype(int)
Get C data type based on given SQL data type.
Definition sqlCtype.c:22
dbValue * db_get_column_value(dbColumn *)
Returns column value for given column structure.
int db_get_column_sqltype(dbColumn *)
Returns column sqltype for column.
int db__send_value(dbValue *, int)
Send value.
Definition xdrvalue.c:26
dbValue * db_get_column_default_value(dbColumn *)
Returns column default value for given column structure.
int db__recv_value(dbValue *, int)
Receive value.
Definition xdrvalue.c:60
#define DB_SEND_STRING(x)
Definition macros.h:24
#define DB_SEND_CHAR(x)
Definition macros.h:50
#define DB_RECV_CHAR(x)
Definition macros.h:55
#define DB_SEND_COLUMN_DEFAULT_VALUE(x)
Definition macros.h:203
#define DB_SEND_INT(x)
Definition macros.h:82
#define DB_RECV_INT(x)
Definition macros.h:87
#define DB_RECV_STRING(x)
Definition macros.h:39
#define DB_RECV_COLUMN_DEFAULT_VALUE(x)
Definition macros.h:208
int db__send_column_value(dbColumn *column)
Send column value.
Definition xdrcolumn.c:79
int db__recv_column_definition(dbColumn *column)
Receive column definition.
Definition xdrcolumn.c:51
int db__send_column_definition(dbColumn *column)
Send column definition.
Definition xdrcolumn.c:23
int db__recv_column_value(dbColumn *column)
Receive column value.
Definition xdrcolumn.c:92
int db__recv_column_default_value(dbColumn *column)
Receive column default value.
Definition xdrcolumn.c:118
int db__send_column_default_value(dbColumn *column)
Send column default value.
Definition xdrcolumn.c:105