首頁  >  文章  >  後端開發  >  可以在 Go 中使用 SET 變數執行 MySQL 查詢嗎?

可以在 Go 中使用 SET 變數執行 MySQL 查詢嗎?

DDD
DDD原創
2024-10-23 18:27:02697瀏覽

Can You Execute MySQL Queries with SET Variables in Go?

Go 中使用SET 變數進行MySQL 查詢

在Go 中,在執行MySQL 查詢之前使用SET 變數可以透過宣告來提高查詢效率變數值並在查詢本身之前執行計算。

問題

嘗試使用 SET 變數執行查詢導致 SELECT 語句出現語法錯誤。該查詢在控制台上執行完美,但在透過 Go 執行時遇到問題。使用者質疑此類查詢的可行性並尋求解決方案。

解決方案

透過合併兩個關鍵修改解決了這個問題:

  1. DSN 設定: 用於連接MySQL 資料庫的DSN(資料來源名稱)需要包含以下參數:

    • multiStatements=true:允許在單一連線中執行多個查詢。
    • interpolateParams=true:啟用 SQL 語句中參數的內插。
  2. 排序規則轉換:資料庫及其表必須從 utf8mb4_0900_ai_ci 轉換為 utf8mb4_general_ci 排序規則,以解決與排序規則不符相關的錯誤排序。

結論

透過合併指定的 DSN參數並確保排序規則設定的相容性,使用 SET 變數的查詢在 Go 中成功執行。使用者避免了重複參數的繁瑣做法,並提高了查詢效率。

以上是可以在 Go 中使用 SET 變數執行 MySQL 查詢嗎?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn