GBase 8s V8.8 SQL 指南:教程-9.3.2

这篇博客讨论了在编程中遇到数据库NULL值时的处理方法。通过使用指示符变量,程序可以识别并处理NULL值,避免将其误当作有效数据。在GBase8sESQL/C的示例中,当从数据库检索数据时,指示符变量op_d_ind用于标识NULL值。如果该值为负,说明数据为NULL,并可通过特定函数设置默认值。
摘要由CSDN通过智能技术生成

9.3.2 如果程序检索到 NULL 值,该怎么办?
可在数据库中存储 NULL 值,但编程语言支持的数据类型不识别 NULL 状态。程序必须
采用某种方式来识别 NULL 项,以免将它作为数据来处理。
在 SQL API 中,指示符变量满足此需要。指示符变量是与可能收到 NULL 项的主变量相
关联的一个附加的变量。当数据库服务器将数据放在主变量中时,它还在指示符变量中放
置一个特殊的值来展示该数据是否为 NULL。在下列 GBase 8s ESQL/C 示例中,选择单个
行,并将单个值检索到主变量 op_date 内:
EXEC SQL SELECT paid_date
 INTO :op_date:op_d_ind
 FROM orders
 WHERE order_num = $the_order;
 if (op_d_ind < 0) /* data was null */
 rstrdate ('01/01/1900', :op_date);
语句该值可能为 NULL,名为 op_d_ind 的指示符变量与该主变量相关联。(必须在程序中
的其他地方将它声明为以短整数。)
跟在 SELECT 语句的执行之后,程序测试该指示符变量为负值。负值(通常为 -1)意味着
检索到主变量内的值为 NULL。如果该变量为 NULL,则此程序使用 GBase 8s ESQL/C 库
函数来将缺省的值指定给主变量。(函数 rstrdate 是 GBase 8s ESQL/C 产品的一部分。)
您用来将指示符变量与主变量相关联的语法,不同于您正在使用的语言,但在所有语言中,
该原则是相同的。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值