amazon simpledb 属性命名限制?

问题描述 投票:0回答:1

想知道amazons simpledb 中对属性名有没有限制。 我尝试了以下属性名称

my.attribute.name

运行以下查询

select * from mydomain where my.attribute.name is not null

导致错误:“指定的查询表达式语法无效。”。 围绕“my.attribute.name”也会导致错误,因为选择语法无效。

将点改为下划线,一切正常:

my_attribute_name

查询运行良好

select * from mydomain where my_attribute_name is not null

现在我的问题是:属性允许的字符是什么? 在amazon developer manual 上,名称仅限于 xml 文档中有效的字符。这到底是什么意思?链接的 W3C 文档似乎没有回答这个问题。在域名中,点“.”是允许的。

目前我使用sdbTool。我希望这不会影响行为。

在属性名称中插入一些其他字符是可行的,例如:'my:attribute-name.with other%20chars'。

有什么想法吗?

sql amazon-web-services attributes amazon-simpledb
1个回答
1
投票

能否请您用反引号括起您的属性名称,然后重试?

域名和属性名如果包含任何特殊字符,需要用反引号括起来。如果属性和域名仅包含字母、数字、下划线 (_) 或美元符号 ($),则它们可能不带引号。如果所有其他属性和域名包含任何特殊字符,则必须用反引号 (`) 将它们引号。

© www.soinside.com 2019 - 2024. All rights reserved.