1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67
|
#include <string.h>
#include "dbmi.h"
/*!
\fn
\brief
\return
\param
*/
char *
db_sqltype_name(sqltype)
int sqltype;
{
static char buf[256];
int from, to;
switch (sqltype)
{
case DB_SQL_TYPE_CHARACTER: return "CHARACTER";
case DB_SQL_TYPE_NUMERIC: return "NUMERIC";
case DB_SQL_TYPE_DECIMAL: return "DECIMAL";
case DB_SQL_TYPE_SMALLINT: return "SMALLINT";
case DB_SQL_TYPE_INTEGER: return "INTEGER";
case DB_SQL_TYPE_REAL: return "REAL";
case DB_SQL_TYPE_DOUBLE_PRECISION: return "DOUBLE PRECISION";
case DB_SQL_TYPE_DATE: return "DATE";
case DB_SQL_TYPE_TIME: return "TIME";
case DB_SQL_TYPE_SERIAL: return "SERIAL";
}
switch (sqltype & ~DB_DATETIME_MASK)
{
case DB_SQL_TYPE_TIMESTAMP: strcpy(buf,"TIMESTAMP "); break;
case DB_SQL_TYPE_INTERVAL: strcpy(buf,"INTERVAL "); break;
default: return "UNKNOWN";
}
db_interval_range (sqltype, &from, &to);
switch (from)
{
case DB_YEAR: strcat (buf, "YEAR"); break;
case DB_MONTH: strcat (buf, "MONTH"); break;
case DB_DAY: strcat (buf, "DAY"); break;
case DB_HOUR: strcat (buf, "HOUR"); break;
case DB_MINUTE: strcat (buf, "MINUTE"); break;
case DB_SECOND: strcat (buf, "SECOND"); break;
case DB_FRACTION: strcat (buf, "FRACTION"); break;
}
if (from)
strcat (buf, " to");
if (to)
strcat (buf, " ");
switch (to)
{
case DB_YEAR: strcat (buf, "YEAR"); break;
case DB_MONTH: strcat (buf, "MONTH"); break;
case DB_DAY: strcat (buf, "DAY"); break;
case DB_HOUR: strcat (buf, "HOUR"); break;
case DB_MINUTE: strcat (buf, "MINUTE"); break;
case DB_SECOND: strcat (buf, "SECOND"); break;
case DB_FRACTION: strcat (buf, "FRACTION"); break;
}
return buf;
}
|