まず、この素晴らしいデータベースに感謝します。リレーショナル モデルを知っている人にとっては、非常に簡単に理解できます。将来のすべてのプロジェクトのために、グラフでデータをモデリングしている自分を見ることができます。
さて質問ですが、
データ モデリングに OrientDB を使用しようとしていますが、奇妙な問題に直面しました。クエリのフィールド名では、大文字と小文字が任意に区別されます。
例えば、
SELECT FROM appuser WHERE mobile = '1111111111' AND out('userhasrole').rolename CONTAINS 'user'
と
SELECT FROM appuser WHERE MOBILE= '1111111111' AND out('userhasrole').rolename CONTAINS 'user'
完全に正常に動作します。
しかし
SELECT FROM appuser WHERE mobile = '1111111111' AND out('userhasrole').ROLENAME CONTAINS 'user'
と
SELECT FROM appuser WHERE MOBILE= '1111111111' AND out('userhasrole').ROLENAME CONTAINS 'user'
動作しません
「rolename」が正確なフィールド名と一致しない場合は機能しないことに注意してください。これが正常かどうか教えてください。
もう1つ、おそらくもっと重要なのは
SELECT FROM appuser WHERE MOBILE= '1111111111' AND out('userhasrole').rolename CONTAINS 'user'
動作しますが、
SELECT FROM appuser WHERE MOBILE= '1111111111' AND out('userhasrole').rolename ='user'
動作しません。フィールド「rolename」は単純な文字列ですが、それを機能させるには CONTAINS を使用する必要があります。これもアドバイスお願いします。
何か見逃した場合はお知らせください。
ありがとう!