我正在创建一个phoenix表,其中的整数/十进制列很少被定义为null,但是当我们在这些列中获取具有null值的数据时,这些记录就会被拒绝。varchar、char和date数据类型中的空值按预期加载。场的定义是这样的;活动索引整数我们不能在phoenix的integer/decimal列中存储空值吗?如果可以的话,那么我们需要什么样的改变才能让它成为我们的终点。
xxls0lw81#
我相信有可能有空整数值。您使用的phoenix/hbase版本是什么?我使用phoenix-4.10.0尝试了下面的代码,效果很好:
0: jdbc:phoenix:localhost> CREATE TABLE IF NOT EXISTS sometable ( . . . . . . . . . . . . .> A INTEGER NOT NULL, . . . . . . . . . . . . .> B INTEGER, . . . . . . . . . . . . .> C INTEGER, . . . . . . . . . . . . .> CONSTRAINT PK PRIMARY KEY (A) . . . . . . . . . . . . .> ); No rows affected (1.305 seconds) 0: jdbc:phoenix:localhost> UPSERT INTO TEST VALUES(1,null,1); 1 row affected (0.06 seconds) 0: jdbc:phoenix:localhost> select * from sometable; +----+-------+----+ | A | B | C | +----+-------+----+ | 1 | null | 1 | +----+-------+----+
1条答案
按热度按时间xxls0lw81#
我相信有可能有空整数值。您使用的phoenix/hbase版本是什么?我使用phoenix-4.10.0尝试了下面的代码,效果很好: