CrateDB允许对象列有大写或骆驼大小写属性名称吗?我有一张这样的桌子:
create table objecttest(
age integer,
name string,
attrs object
);使用insert语句:
insert into objecttest (age,name,attrs) values (30,'harry',{address = '123 street', city = 'city', IPaddress = '10.0.0.1'});..。在坠机事件中:
cr> select * from objecttest;
+-----+---------------------------------------------------------------------+--------+
| age | attrs | name |
+-----+---------------------------------------------------------------------+--------+
| 30 | {"address": "123 street", "city": "city", "ipaddress": "10.0.0.1"} | harry |
+-----+---------------------------------------------------------------------+--------+
SELECT 1 row in set (0.005 sec)..。在CrateDB的JDBC驱动程序中,结果是:
cr> select * from objecttest;
+-----+---------------------------------------------------------------------+-------+
| age | attrs | name |
+-----+---------------------------------------------------------------------+-------+
| 30 | {"address": "123 street", "city": "city", "ipaddress": "10.0.0.1"} | harry |
| 30 | {"IPaddress": "10.0.0.1", "address": "123 street", "city": "city"} | harry |
+-----+---------------------------------------------------------------------+-------+
SELECT 2 rows in set (0.004 sec)IPaddress现在拼写不同了。这是一个bug在箱-jdbc?
发布于 2016-12-14 11:32:01
如果没有引号,CrateDB将所有列名视为不区分大小写的(小写),因此,为了保留大小写,应该引用任何列。另一方面,CrateDB的JDBC驱动程序将自动引用列名,这意味着在那里执行的insert语句将具有代码中所写的大小写。崩溃/管理界面/..。在发出以下文件时将使用保留套管:
insert into objecttest (age,name,attrs) values (30,'harry',{address = '123 street', city = 'city', "IPaddress" = '10.0.0.1'});您将得到相同的结果,就像插入了crate一样。
更多关于这里结构的信息。
干杯!
https://stackoverflow.com/questions/41141517
复制相似问题