DATETIME数据类型存放时间,时间由以下部分组成:YEAR,MONTH,DAY,HOUR,MINUTE,SECOND和秒的FRACTION(n)。 INTERVAL数据类型存放时间间隔,组成部分同上。
定义宿主变量:
DATETIME LargestQulifier TO SmallQulifier INTERVAL LargestQulifier TO SmallQulifier 限定词:
YEAR,MONTH,DAY,HOUR,MINUTE,SECOND,FRACTION(n) 也可以不指明修饰符,直接定义。
2、DATETIME和INTERVAL宏及转换函数
在头文件datetime.h中定义了8个名字和5个宏,可以在操作DATETIME和INTERVAL值时使用它们。 名字
TU_YEAR用于YEAR修饰符域的名字 TU_MONTH TU_HOUR TU_DAY TU_MINUTE TU_SECOND
TU_FRAC用于开始的fraction修饰符域的名字
TU_Fn用于结束的fraction(n)修饰符域的名字(n=1~5) 宏
TU_LEN(q) TU_START(q) TU_END(q)
TU_DTENCODE(s,e) TU_IENCODE(p,s,e)
3、DATETIME和字符串之间的转换函数
dtcvasc(char *from, dtime_t *to)把ANSI兼容的字符串转换为DATETIME值
dtcvfmtasc(char *from, char *fmt, dtime_t *to) 把格式化的字符串转换为DATETIME值。
dttoasc(char *from, dtime_t *to)
dttofmtasc(char *from, dtime_t *to, int len, char *fmt) 4、操作DATETIME值的函数
dtcurrent(dtime *to) 把当前日期和时间赋给一个DATETIME变量。
dtextent(dtime_t *from, dtime *to) 拷贝DATETIME值,使用的是不同的修饰符。
5、INTERVAL转换函数
incvasc(char *from, intrvl_t *to)把ANSI兼容的字符串转换为INTERVAL值
incvfmtasc(char *from, char *fmt, intrvl_t *to) 把格式化的字符串转换为INTERVAL值。
intoasc(char *from, intrvl_t *to)
intofmtasc(char *from, intrvl_t *to, int len, char *fmt)
6、提供DATETIME和INTERVAL算术操作的函数
rdtaddinv(dec_t *dt, int dg, dec_t *in, int iq, dec_t *sum) 把一个INTERVAL值加到一个DATETIME值上。
rdtsub(det_t *dt2, int dq2, dec_t *dt1, int dq1, dec_t *dt0, int dq0) 求两个DATETIME值的差。
7、DATE类型和DATETIME类型之间的转换 DATE→DATETIME ?;定义一个带有修饰符“year to day”的DATETIME变量 ?;使用rfmtdate()函数把DATE值转换为一个字符串,使用的模板是yyyy-mm-dd ?;使用dtcvasc()函数把字符串转换成DATETIME类型变量的值。 ?;如果需要的话,可以使用dtextend()函数来调整DATETIME的修饰符。
DATETIME→DATE ?;使用dtextend()函数把DATETIME的修饰符调整为“year to day”。 ?;使用dttoasc()函数以模板yyyy-mm-dd创建一个字符串。 ?;使用rdefmtdate()函数以模板yyyy-mm-dd把字符串转换为一个DATE值。
8、有关DATETIME和INTERVAL值的其他运算
rinvtodec(dec_t *v, int q, dec_t *dec) 把INTERVAL或DATETIME类型的值转换成DECIMAL类型
redectoinv(dec_t *dec, dec_t *v, int q) 把DECIMAL值转换成INTERVAL或DATETIME类型值
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库esqlc介绍(2)在线全文阅读。
相关推荐: