簡體   English   中英

如何格式化SQL輸出以匹配GraphQL類型?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM