77范文网 - 专业文章范例文档资料分享平台

informix学习总结(2)

来源:网络收集 时间:2018-12-29 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

-1201操作产生下溢 -1202试图用零作除数

3、 DECIMAL函数——DECIMAL操作 deccmp(dec_t *dec1, dec_t *dec2); 返回值: -1dec1dec2

DECUNKNOW有一个是空值 deccopy(dec_t *dec1, dec_t *dec2); decround(dec_t *dec1, int scale); dectrunc(dec_t *dec1, int scale);

DATETIME和INTERVAL使用方式及实例

1、概述

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类型值

第二章游标的使用

声明一个游标

DECLARE the_item CURSOR FOR

SELECT order_num, item_num, stock_num INTO o_num, i_num, s_num FROM items

打开一个游标

OPEN the_item

因为这是数据库第一次收到查询,所以这也是检测许多错误的时机。打开游标后,程序应检查SQLCODE的值。如果它包含了一个负数值,那么,游标是不可用的。SELECT语句中也许会有错误,任何错误都可能使得数据库服务器不能执行语句。 如果SQLCODE是0,表明SELECT语句的语法正确,游标可以使用。但是,在这一点上,程序并不知道游标能否返回数据行。

取出行

DECLARE the_item CURSOR FOR

SELECT order_num, item_num, stock_num INTO o_num, i_num, s_num FROM items OPEN the_item

WHILE sq1code = 0

FETCH the_item

IF sq1code = 0 THEN

DISPLAY o_num, i_num, s_num END IF END WHILE

判断数据结束

DECLARE the_item CURSOR FOR

SELECT order_num, item_num, stock_num FROM items OPEN the_item

IF sq1code = 0 THEN

FETCH the_item - - fetch first row END IF

WHILE sq1code = 0

DISPLAY o_num, i_num, s_num FETCH the_item END WHILE

定位INTO子句

INTO子句给出了宿主变量的名字,由这些宿主变量接收数据库服务器返回的数据。宿主变量的名字必须在SELECT或FETCH语句中的一个中出现,但不能在二者中都出现。下面是重新编写的在FETCH语句中指定宿主变量的例子:

DECLARE the_item CURSOR FOR

SELECT order_num, item_num, stock_num FROM items OPEN the_item WHILE status = 0

FETCH the_item INTO o_num, i_num, s_num IF status = 0 THEN

DISPLAY o_num, i_num, s_num END IF END WHILE

第三章FOREACH语句

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库informix学习总结(2)在线全文阅读。

informix学习总结(2).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/395574.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: