0

这是专门关于将数据插入 CrateDB 的,

我有一张表,其中有一列是 OBJECT 类型。我正在尝试使用 python 将 JSON 数据插入其中,并且进展顺利。

创建表用户(userdata OBJECT);

但是,我的数据中有撇号,即单引号,因此插入失败。我已经在控制台上复制了这个问题:

下面数据中的问题在于“snr”字段。我曾尝试输入反斜杠,但这无济于事。

有人可以告诉我如何获得以下插入

INSERT into users (userdata) 
VALUES ('{"area_code": "2", "companyname": "TEC", "cos": "National24Hrs-Standard", 
"country_code": "AUS", "cucm_dn": "26902", "ddi": "84236902", "department": null, 
"device_type": "Cisco 8945 SIP", "divisionname": "Demonstrations", 
"emailaddress": "bart.simpson@core.demo.telstra.com", "extension": "26902", 
"extra1": null, "extra2": null, "extra3": null, "extra4": null, 
"featuregroup": "Mobile Worker", "firstname": "Bart", "information": null, 
"ippbxchosen": "TEC-CL-1", "language": "English - United States", "lastname": "Simpson", 
"locationname": "Sydney", "mask": "61284236902", "pickupgroup": null, "postcode": "2000", 
"presence": "Y", "role": "enduser", "security_profile": "EndUser-SP1", 
"snr": "Bart\'s Mobile:0457503561,Bart Simpson:457503561", 
"username": "bart.simpson@core.demo.telstra.com", "voicemail": "UCX-Advanced-CoS"}')
4

1 回答 1

0

将 JSONstring插入 CrateDBobject类型的列总是会失败,这与您的情况下的错误转义无关。要么将其作为 CrateDB 对象(我猜这是你想要的)插入以获得访问/搜索每个键/值的好处,要么将数据类型更改为string.

请参阅有关使用对象文字的文档https://crate.io/docs/crate/reference/en/latest/general/ddl/data-types.html#object-literals。此外,大多数 CrateDB 客户端驱动程序确实支持将数据绑定为对象。

于 2018-05-23T07:37:39.477 回答