OracleでのGraphQLのための暗黙的なフィールド別名のサポート
OracleでGraphQLを使用する場合、暗黙的なフィールド別名によって、SQL列名をJSONドキュメント・フィールドに合理的にマッピングできます。
通常、標準のGraphQLでは、フィールド名で大/小文字が区別され、開発者は、出力のフィールドが基礎となるデータベースの大/小文字または形式と異なるようにする場合は、正確な命名または明示的な別名を使用する必要があります。
ただし、Oracleの実装では、フィールド名がGraphQL定義に明示的な別名なしで指定されている場合、Oracleはそれを大/小文字を区別せずに実際のSQL列名と一致させます。ただし、JSON出力では、GraphQL定義で指定されているとおりに正確な大/小文字が保持されます。実際には、Oracleでは、別名のないフィールドは、ビュー定義に示されているフィールド名で照合され、別名を使用して記述されているかのように自動的に処理されます。
基礎となるデータベース表
DRIVERに、driver_idという列が含まれているとします。結果のJSONドキュメントで別名フィールドdriverIdを使用する場合は、driverIdをGraphQL定義のdriver_id列の別名として使用すればよいだけです:driver {
driverId : driver_id
name
points
}出力JSONドキュメントは次のようになります:
{
"driverId": 101,
"name" : "Lando Norris",
"points" : 282
}このメカニズムにより、明示的な別名が不要になり、JSON出力のSQL定義で使用された正確なフィールド名が維持されます。