最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

Oracle异常[ORA-22908:NULL表值的参考]问题的解析及解决方法

来源:动视网 责编:小采 时间:2020-11-09 10:28:32
文档

Oracle异常[ORA-22908:NULL表值的参考]问题的解析及解决方法

Oracle异常[ORA-22908:NULL表值的参考]问题的解析及解决方法:Oracle异常[ORA-22908:NULL表值的参考]问题的解析及解决方法 场景如下: type list_obj ; test( name (regexp_like(name,)), id , version_list list_obj ) nested table version_list store as version
推荐度:
导读Oracle异常[ORA-22908:NULL表值的参考]问题的解析及解决方法:Oracle异常[ORA-22908:NULL表值的参考]问题的解析及解决方法 场景如下: type list_obj ; test( name (regexp_like(name,)), id , version_list list_obj ) nested table version_list store as version


Oracle异常[ORA-22908:NULL表值的参考]问题的解析及解决方法

场景如下:

type list_obj ; test( name (regexp_like(name,)), id , version_list list_obj ) nested table version_list store as version_list;

场景说明:类型 list_obj 相当一个元素为数字的列表。表 test 有三个字段,,字段 name 为主键限制只能使用小写字母、数字、下划线组成的字符串;字段 id 是数字,限制为非空;字段 version_list 是类型为 list_obj 的嵌套表。

操作1:

test(name, id) , 1);

查询结果如下:

目前 version_list 为空(注意,是 null),现在我们需要开始维护该字段:往 的记录插入一个版本号20130403112459。语句如下:

() values(20130403112459);

执行以上 insert 语句就报错了!

原因是什么?version_list 字段目前是 NULL,以上insert语句试图做这个动作:table(NULL),也就是要将NULL对象化成一个表。这事有违常理,Oracle干不了!

那么怎么解决呢?version_list 字段之所以为NULL,是因为我们根本没对它进行初始化。那么,在insert之前先对其初始化不久能解决问题了吗?

方法一:在往 test 表 insert 的时候使用如下语句

test(name, id, version_list) , 1, list_obj());

方法二:在往 version_list 插入版本号之前先对其进行初始化

test ;

看下图:

这是在 pl/sql developer下的查询输出,注意 version_list 列数据单元格的背景色(与上方图片对比一下)已经不是淡黄色(此时字段值为null)!虽然查看 version_list 字段的内部内容依旧是没有一条记录,但是意义上是不一样的——初始化之前是 null,初始化之后才是 list_obj 对象。

完毕!

文档

Oracle异常[ORA-22908:NULL表值的参考]问题的解析及解决方法

Oracle异常[ORA-22908:NULL表值的参考]问题的解析及解决方法:Oracle异常[ORA-22908:NULL表值的参考]问题的解析及解决方法 场景如下: type list_obj ; test( name (regexp_like(name,)), id , version_list list_obj ) nested table version_list store as version
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top