00001 #include "dbmi.h"
00002
00009 void
00010 db_interval_range (sqltype, from, to)
00011 int sqltype;
00012 int *from;
00013 int *to;
00014 {
00015 switch (sqltype)
00016 {
00017 case DB_SQL_TYPE_DATE:
00018 *from = DB_YEAR;
00019 *to = DB_DAY;
00020 return;
00021 case DB_SQL_TYPE_TIME:
00022 *from = DB_HOUR;
00023 *to = DB_FRACTION;
00024 return;
00025 }
00026
00027 if (sqltype & DB_YEAR)
00028 *from = DB_YEAR;
00029 else if (sqltype & DB_MONTH)
00030 *from = DB_MONTH;
00031 else if (sqltype & DB_DAY)
00032 *from = DB_DAY;
00033 else if (sqltype & DB_HOUR)
00034 *from = DB_HOUR;
00035 else if (sqltype & DB_MINUTE)
00036 *from = DB_MINUTE;
00037 else if (sqltype & DB_SECOND)
00038 *from = DB_SECOND;
00039 else if (sqltype & DB_FRACTION)
00040 *from = DB_FRACTION;
00041 else
00042 *from = 0;
00043
00044 if (sqltype & DB_FRACTION)
00045 *to = DB_FRACTION;
00046 else if (sqltype & DB_SECOND)
00047 *to = DB_SECOND;
00048 else if (sqltype & DB_MINUTE)
00049 *to = DB_MINUTE;
00050 else if (sqltype & DB_HOUR)
00051 *to = DB_HOUR;
00052 else if (sqltype & DB_DAY)
00053 *to = DB_DAY;
00054 else if (sqltype & DB_MONTH)
00055 *to = DB_MONTH;
00056 else if (sqltype & DB_YEAR)
00057 *to = DB_YEAR;
00058 else
00059 *to = 0;
00060 }