首頁  >  文章  >  後端開發  >  如何使用設定變數在 Go 中執行 MySQL 查詢

如何使用設定變數在 Go 中執行 MySQL 查詢

Mary-Kate Olsen
Mary-Kate Olsen原創
2024-10-23 17:48:02355瀏覽

How to Execute MySQL Queries in Go with Set Variables

使用 SET 變數進行 Go MySQL 查詢

問題

您嘗試在 Go 中執行 MySQL 查詢,該查詢在執行查詢之前設定變數。但是,當您透過 Go 執行查詢時,您會在 SELECT 語句中遇到語法錯誤。

解決方案

此問題的解決方案涉及兩個步驟:

  1. 配置DSN:

    • 連接到數據庫時,將以下設置添加到DSN:...&multiStatements=true&interpolateParams=true
  2. 轉換排序規則:

    • 如果您使用的是MySQL,請確保您的資料庫和表格使用相同的排序規則。如果不是,請將其轉換為 utf8mb4_general_ci。

說明

DSN 配置:

多語句設定允許在單一查詢中執行多個語句。 interpolateParams 設定啟用參數插值,這允許您使用 ?查詢參數的佔位符。

排序規則轉換:

MySQL 有多種排序規則,它們決定字元的排序和比較方式。如果資料庫和表格的排序規則不匹配,則在執行比較時可能會遇到排序規則錯誤。轉換為一致的排序規則可以解決此問題。

透過進行這些更改,您將能夠在預先設定變數的同時在 Go 中成功執行查詢。

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

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