ホームページ  >  記事  >  バックエンド開発  >  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 クエリ

問題

クエリを実行する前に変数を設定する MySQL クエリを Go で実行しようとしています。ただし、Go でクエリを実行すると、SELECT ステートメントで構文エラーが発生します。

解決策

この問題の解決策には 2 つの手順が必要です:

  1. DSN を構成します:

    • データベースに接続するときに、DSN に次の設定を追加します: ...&multiStatements=true&interpolateParams=true
  2. 照合順序の変換:

    • MySQL を使用している場合は、データベースとテーブルが同じ照合順序を使用していることを確認してください。そうでない場合は、utf8mb4_general_ci に変換します。

説明

DSN 構成:

multiStatementsこの設定により、単一のクエリで複数のステートメントを実行できます。 interpolateParams 設定によりパラメータ補間が有効になり、? を使用できるようになります。

照合順序変換:

MySQL には複数の照合順序があり、文字の並べ替え方法と比較方法が決まります。データベースとテーブルの照合順序が一致しない場合、比較の実行時に照合エラーが発生する可能性があります。一貫した照合順序に変換すると、この問題は解決されます。

これらの変更を行うことで、事前に変数を設定しながら Go でクエリを正常に実行できるようになります。

以上がGo で変数を設定して MySQL クエリを実行する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。