使用pq.Array 將切片參數合併到SQL 查詢中
嘗試執行包含整數切片作為參數的SQL 查詢時,使用者可能會遇到錯誤:「sql:轉換參數$1 類型:不支援的型別[]int,int 切片。」為了解決這個問題,可以使用pq.Array 函數。
問題:
考慮以下程式碼:
somevars := []int{1, 2, 3, 4} rows, err := db.Query("SELECT c1,c2 FROM table"+tid+" WHERE c1 IN(,,,);", somevars)
執行此程式碼查詢產生錯誤:「sql:轉換參數$1 類型:不支援的類型[]int,切片int."
解:
要解決這個問題,可以使用pq.Array 將整數切片封裝到單一參數中:
somevars := []int{1, 2, 3, 4} rows, err = db.Query("SELECT c1,c2 FROM table"+tid+" WHERE c1 = any();", pq.Array(somevars))
pq.Array 函數將整數切片轉換為陣列表示形式,使其能夠由SQL 查詢正確處理。透過使用 pq.Array,可以輕鬆地將切片參數合併到 SQL 查詢中,從而解決錯誤訊息。
以上是如何使用 pq.Array 將整數切片作為 SQL 查詢中的參數傳遞?的詳細內容。更多資訊請關注PHP中文網其他相關文章!