00001 #include <grass/dbmi.h> 00002 #include "macros.h" 00003 00004 db__send_column_definition (dbColumn *column) 00005 00006 { 00007 DB_SEND_STRING (&column->columnName); 00008 DB_SEND_STRING (&column->description); 00009 DB_SEND_INT (column->sqlDataType); 00010 DB_SEND_INT (column->hostDataType); 00011 DB_SEND_INT (column->precision); 00012 DB_SEND_INT (column->scale); 00013 DB_SEND_INT (column->dataLen); 00014 DB_SEND_INT (column->select); 00015 DB_SEND_INT (column->update); 00016 DB_SEND_CHAR (column->nullAllowed); 00017 DB_SEND_CHAR (column->useDefaultValue); 00018 DB_SEND_CHAR (column->hasDefaultValue); 00019 if (column->hasDefaultValue) 00020 { 00021 DB_SEND_COLUMN_DEFAULT_VALUE(column); 00022 } 00023 00024 return DB_OK; 00025 } 00026 00027 db__recv_column_definition (dbColumn *column) 00028 00029 { 00030 DB_RECV_STRING (&column->columnName); 00031 DB_RECV_STRING (&column->description); 00032 DB_RECV_INT (&column->sqlDataType); 00033 DB_RECV_INT (&column->hostDataType); 00034 DB_RECV_INT (&column->precision); 00035 DB_RECV_INT (&column->scale); 00036 DB_RECV_INT (&column->dataLen); 00037 DB_RECV_INT (&column->select); 00038 DB_RECV_INT (&column->update); 00039 DB_RECV_CHAR (&column->nullAllowed); 00040 DB_RECV_CHAR (&column->useDefaultValue); 00041 DB_RECV_CHAR (&column->hasDefaultValue); 00042 if (column->hasDefaultValue) 00043 { 00044 DB_RECV_COLUMN_DEFAULT_VALUE(column); 00045 } 00046 00047 return DB_OK; 00048 } 00049 00050 db__send_column_value (dbColumn *column) 00051 00052 { 00053 return db__send_value (db_get_column_value(column), 00054 db_sqltype_to_Ctype (db_get_column_sqltype(column))); 00055 } 00056 00057 db__recv_column_value (dbColumn *column) 00058 00059 { 00060 return db__recv_value (db_get_column_value(column), 00061 db_sqltype_to_Ctype (db_get_column_sqltype(column))); 00062 } 00063 00064 db__send_column_default_value (dbColumn *column) 00065 00066 { 00067 return db__send_value (db_get_column_default_value(column), 00068 db_sqltype_to_Ctype (db_get_column_sqltype(column))); 00069 } 00070 00071 db__recv_column_default_value (dbColumn *column) 00072 00073 { 00074 return db__recv_value (db_get_column_default_value(column), 00075 db_sqltype_to_Ctype (db_get_column_sqltype(column))); 00076 }