[英]How can I format my SQL output to match my GraphQL type?
我有一個谷歌為此,但似乎找不到答案。
我有一個GraphQL類型,看起來像這樣:
type Ticket {
id: Int!
bandID: Int!
band: Band
ticketURL: String!
price: Int!
date: String!
}
我希望能夠從MSSQL,GraphQL和JS返回類似的內容:
[
{
id: 1,
ticketURL: "https://example.co.uk",
price: 50,
date: "2019/01/01",
band: {
id: 1,
name: "Band name"
}
}
]
返回這樣的數據結構的最有效方法是什么? ,想到的第一件事是像下面,但似乎如此低效和錯誤的。
// Call SQL to get all tickets: "SELECT * FROM Ticket"
// For each ticket
// Call SQL to get the Band
// Merge with the ticket obj
一般來說,我鼓勵您不要為所描述的內容開槍。 GraphQL規范的設計原則鼓勵您確保您的API邏輯專門滿足客戶的需求,並且如果替換您的GraphQL時出現了更適合您需求的東西,那么您應該能夠刪除GraphQL層並進行替換無論新事物是什么,都無需重寫邏輯。 根據GraphQL的發明者,這個特定的要求與API緊密耦合。 對於大多數人來說,數據庫的延遲並不是需要這種優化的足夠大的瓶頸。 相反,我鼓勵您使用數據加載器(用於緩存和批量請求),僅編寫解析器以調用ORM或任何獲取這些數據點的方法。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.