บทความนี้มีการแบ่งย่อยของโครงสร้างข้อกําหนดสําหรับรายการ GraphQLApi
ส่วนคําจํากัดความ
ตารางนี้แสดงรายการส่วนข้อกําหนด GraphQLApi
| เส้นทางของส่วนข้อกําหนด |
ชนิด |
ต้องมี |
คำอธิบาย |
.platform |
PlatformDetails (JSON) |
เท็จ |
อธิบายรายละเอียดทั่วไปของรายการ |
graphql-definition.json |
GraphQLDefinition (JSON) |
จริง |
อธิบายทั่วไปและการกําหนดค่าแหล่งข้อมูลของ API สําหรับ GraphQL |
GraphQLDefinition
| ชื่อ |
ประเภท |
คำอธิบาย |
| $schema |
สตริง |
URL สําหรับข้อมูลจําเพาะของ schema |
| แหล่งข้อมูล |
แหล่งที่มา[] |
รายการของแหล่งข้อมูลที่เชื่อมโยงกับ API สําหรับ GraphQL |
แหล่งที่มา
| ชื่อ |
ประเภท |
คำอธิบาย |
| sourceItemId |
คําแนะนํา |
ID ของรายการต้นทาง |
| sourceWorkspaceId |
คําแนะนํา |
ID ของพื้นที่ทํางานที่มีรายการต้นทาง |
| connectionId |
คําแนะนํา |
ID ของการเชื่อมต่อที่ใช้สําหรับรายการต้นทาง |
| sourceType |
SourceType |
ชนิดของรายการต้นทาง |
| วัตถุ |
SourceObject[] |
รายการของออบเจ็กต์ในรายการต้นทางที่เปิดเผยโดยใช้ GraphQL API |
SourceType (enum)
| ชื่อ |
คำอธิบาย |
| SqlAnalyticsEndpoint |
จุดสิ้นสุดการวิเคราะห์ SQL |
| คลังสินค้า |
คลังสินค้า |
| SqlDbNative |
ฐานข้อมูล SQL |
| AzureSql |
ฐานข้อมูล Azure SQL |
SourceObject
| ชื่อ |
ประเภท |
คำอธิบาย |
| graphqlType |
สตริง |
ชื่อชนิด GraphQL ที่จะใช้สําหรับวัตถุในรายการต้นทาง |
| sourceObject |
สตริง |
ชื่อวัตถุในรายการแหล่งข้อมูลที่เปิดเผยโดย GraphQL API |
| sourceObjectType |
SourceObjectType |
ชนิดออบเจ็กต์ในหน่วยข้อมูลต้นทาง |
| การดําเนินการ |
<ActionType, ActionValue> |
พจนานุกรมของชนิดการดําเนินการกับค่าการดําเนินการที่ระบุคิวรีและการกลายพันธุ์ที่มีสถานะการเปิดใช้งาน |
| fieldMappings |
<String, String> |
พจนานุกรมของเขตข้อมูลในออบเจ็กต์ต้นทางกับเขตข้อมูล GraphQL |
| สัมพันธ์ |
ความสัมพันธ์[] |
รายการของความสัมพันธ์ที่กําหนดค่าจากวัตถุต้นทาง |
| IsStoredProcedureQueryNode |
บูลีน |
ชนิดการดําเนินการ GraphQL สําหรับการเปิดเผยขั้นตอนการจัดเก็บ จริง - คิวรี เท็จ - การกลายพันธุ์ |
SourceObjectType (enum)
| ชื่อ |
คำอธิบาย |
| โต๊ะ |
ตารางฐานข้อมูล |
| มุมมอง |
มุมมองฐานข้อมูล |
| StoredProcedure |
กระบวนงานที่เก็บไว้ของฐานข้อมูล |
ActionType (enum)
| ชื่อ |
คำอธิบาย |
| คิวรี |
คิวรีบนวัตถุต้นทาง |
| Query_by_pk |
คิวรีโดยคีย์หลักบนวัตถุต้นทาง |
| สร้าง |
สร้างการกลายพันธุ์บนออบเจ็กต์ต้นทาง |
| อัปเดต |
อัปเดตการกลายพันธุ์บนวัตถุต้นทาง |
| ลบ |
ลบการกลายพันธุ์บนวัตถุต้นทาง |
| ดำเนินการ |
ดําเนินการคิวรีหรือการกลายพันธุ์บน Stored Procedure |
ActionValue (enum)
| ชื่อ |
คำอธิบาย |
| เปิดใช้งาน |
เปิดใช้งานคิวรีหรือการกลายพันธุ์ |
| ถูกปิดใช้งาน |
ปิดใช้งานคิวรีหรือการกลายพันธุ์ |
ความสัมพันธ์
| ชื่อ |
ประเภท |
คำอธิบาย |
| สนาม |
สตริง |
ชื่อเขตข้อมูล GraphQL ที่จะใช้สําหรับความสัมพันธ์ในชนิด GraphQL |
| คาร์ดินาลลิตี้ |
RelationshipCardinality |
คาร์ดินาลลิตี้สําหรับความสัมพันธ์ |
| targetObject |
สตริง |
ออบเจ็กต์เป้าหมายสําหรับความสัมพันธ์ |
| sourceFields |
String[] |
รายการเขตข้อมูลในวัตถุต้นทางที่ใช้สําหรับความสัมพันธ์ |
| targetFields |
String[] |
รายการของเขตข้อมูลในวัตถุเป้าหมายที่ใช้สําหรับความสัมพันธ์ |
| linkingObject |
สตริง |
การเชื่อมโยงวัตถุสําหรับความสัมพันธ์แบบกลุ่มต่อกลุ่มระหว่างวัตถุต้นทางและวัตถุเป้าหมาย |
| linkingSourceFields |
String[] |
รายการของเขตข้อมูลในวัตถุการเชื่อมโยงสําหรับความสัมพันธ์จากวัตถุต้นทาง |
| linkingTargetFields |
String[] |
รายการของเขตข้อมูลในวัตถุการเชื่อมโยงสําหรับความสัมพันธ์ไปยังวัตถุเป้าหมาย |
RelationshipCardinality (enum)
| ชื่อ |
คำอธิบาย |
| ManyToOne |
ความสัมพันธ์แบบกลุ่มต่อหนึ่ง |
| OneToMany |
ความสัมพันธ์แบบหนึ่งต่อกลุ่ม |
| OneToOne |
ความสัมพันธ์แบบหนึ่งต่อหนึ่ง |
| ManyToMany |
ความสัมพันธ์แบบกลุ่มต่อกลุ่ม |
ตัวอย่าง GraphQLDefinition
{
"$schema": "https://developer.microsoft.com/json-schemas/fabric/item/graphqlApi/definition/1.0.0/schema.json",
"datasources": [
{
"objects": [
{
"actions": {
"Query": "Enabled"
},
"fieldMappings": {
"LastName": "LastName",
"Name": "Name"
},
"graphqlType": "Customers",
"relationships": [],
"sourceObject": "model.Customers",
"sourceObjectType": "View"
}
],
"sourceItemId": "c54cd4ce-cbaa-4fc5-bcc8-121f2a3e0c4c",
"sourceType": "Warehouse",
"sourceWorkspaceId": "c2231263-b81e-4dd2-a69b-41eca8c93584"
},
{
"connectionId": "daa5dc10-6eae-4b19-af5f-da8db84c51c1",
"objects": [
{
"actions": {
"Query": "Enabled"
},
"fieldMappings": {
"id": "id",
"publisher_id": "publisher_id",
"title": "title"
},
"graphqlType": "publishers",
"relationships": [],
"sourceObject": "dbo.publishers_view",
"sourceObjectType": "View"
},
{
"actions": {
"Query": "Enabled",
"Query_by_pk": "Enabled",
"Create": "Enabled",
"Update": "Enabled",
"Delete": "Disabled"
},
"fieldMappings": {
"id": "id",
"title": "title"
},
"graphqlType": "books",
"relationships": [],
"sourceObject": "dbo.books",
"sourceObjectType": "Table"
}
],
"sourceItemId": "daa5dc10-6eae-4b19-af5f-da8db84c51c1",
"sourceType": "AzureSql",
"sourceWorkspaceId": "00000000-0000-0000-0000-000000000000"
}
]
}