<ID文字列>の定義について説明します。<ID文字列>は,<クラス名>や<プロパティ名>を,名称(dmaProp_DisplayNameに定義した値)以外で表記するための文字列です。
Java クラスライブラリでは,DMAクラスやプロパティは,名称で指定します。この名称は,メタ情報ファイルの定義内容に従ってGUIDの値に変換されて,DocumentBrokerの文書空間に渡されます。DocumentBrokerの文書空間では,DMAクラスやプロパティはGUIDによって定義され,識別されています。
edmSQLでは,GUIDでDMAクラスおよびプロパティを指定できます。
edmSQLでGUID値を表現する場合,<ID文字列>という記述形式で表現します。これは,<クラス名>や<プロパティ名>と同じ扱いになるため,<ID文字列>に<?パラメタ>によって値を指定することはできません。
<ID文字列>は,<シングルクォート>で囲まれたGUID文字列として指定します。
GUID文字列とは,「X」を0~9およびa~f(小文字)で表される16進数とした「XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX(8けた-4けた-4けた-4けた-12けた)」の形式の文字列です。
なお,<ID文字列>に指定する「ID」と<ID本体>の間に,区切り文字は指定できません。
<ID文字列>の詳細について説明します。
ID文字列の「ID」は,<予約されたキーワード>です。したがって,<非区切りトークン>として扱われます。また,<ID本体>は,<区切りトークン>として扱われます。このため,<ID文字列>の前に<区切り文字>なしで<非区切りトークン>は指定できませんが,<ID文字列>の後ろに<区切り文字>なしで<非区切りトークン>は指定できます。
<ID文字列>の表記例とedmSQL検索実行時の値の扱われ方を,次の表に示します。
表5-30 <ID文字列>の表記例とedmSQL検索実行時の値の扱われ方
<ID文字列>の表記 | 扱われ方 |
---|---|
ID'FA7DA34B-CFF3-11d3-A03E-00A0C9967923' | 正しい<ID文字列>として扱われます。 |
ID□'FA7DA34B-CFF3-11d3-A03E-00A0C9967923' | 「ID」と<ID本体>の間に区切り文字が入っているため,字句解析エラーになります。 |
ID'FA7DA34B-CFF3-11d3-A03E-00A0C9967923'FROM | <ID文字列>と「FROM」として扱われます。 |
SELECTID'FA7DA34B-CFF3-11d3-A03E-00A0C9967923' | 「SELECTID」と文字リテラルとして扱われます。 |
(凡例)
□:区切り文字または<空白>