1. テーブル内のフィールドの大文字と小文字の区別を設定するgorm クエリを使用する場合、MySQL はデフォルトで大文字と小文字を区別しないため、アカウント名Aとa は同じになる可能性があります。 1. 問題の原因 MySQL はWindowsでは大文字と小文字を区別しません。
MySQL は、文字列をクエリするときに大文字と小文字を区別しません。MySQL をコンパイルする場合、通常、デフォルトの文字セットとして ISO-8859 文字セットが使用されます。この文字セットは大文字と小文字を区別しません。そのため、比較プロセス中に中国語でエンコードされた文字の大文字と小文字が変換されると、この現象が発生します。 2. MySQLのソートルール utf8_bin は、大文字と小文字を区別して、文字列内の各文字をバイナリ データとして保存します。 utf8_genera_ci は大文字と小文字を区別しません。ci は case insensitive の略語で、大文字と小文字を区別しないことを意味します。 utf8_general_cs は大文字と小文字を区別します。cs は case sensitive の略語です。 (注意: MySQL 5.6.10 では、utf8_genral_cs はサポートされていません!!! 3. 解決策 1. バイナリキーワード SQL クエリ ステートメントを変更し、クエリするフィールドの前にバイナリ キーワードを追加するだけです。 (非推奨) 1. 各条件の前にバイナリキーワードを追加します バイナリ ユーザー名 = 'admin'、バイナリ パスワード = 'admin' の場合、ユーザーから * を選択します。 2. パラメータをバイナリ('')で囲みます。 select * from user where username like binary('admin') and password like binary('admin'); 2. 照合プロパティを変更するテーブルを作成するときは、テーブルの collate プロパティを utf8_general_cs または utf8_bin に直接設定します。テーブルがすでに作成されている場合は、フィールドの Collation プロパティを utf8_general_cs または utf8_bin に直接変更します。 1. テーブル構造を変更する ALTER TABLE TABLENAME MODIFY COLUMN COLUMNNAME VARCHAR(50) BINARY CHARACTER SET utf8 COLLATE utf8_bin DEFAULT NULL; 2. フィールドを変更する(テーブル内のフィールドを大文字と小文字を区別するように設定するには、 gormを使用します) `gorm:"unique" sql:"type:VARCHAR(255) CHARACTER SET utf8 COLLATE utf8_bin"` gorm を使用して MySql データベースを操作する方法についてのこの記事はこれで終わりです。 gorm を使用して MySql データベースを操作する方法の詳細については、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。 今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: HTML の ReadOnly と Enabled の違い
>>: WeChat アプレットの日付と時刻のコンポーネント (年、月、日、時間、分)
カーネル内の強力なツール cgroup は、NameSpace によって分離されたリソースを制限でき...
この記事では、携帯電話のプルダウンリフレッシュを模倣したjsの具体的なコードを参考までに共有します。...
1. 問題の紹介ユーザー テーブルに 3 つのフィールドが含まれているシナリオを想定します。 id、...
目次1. CentOS 7.9 20にDockerをインストールする2. MySQL クラスターをデ...
目次MySQL NDB Clusterとはクラスター構築のための準備作業クラスターのデプロイを開始す...
1例: 図1のフィールドを図2に分割するには アカウントIDを選択、 サブストリングインデックス(サ...
my.ini とは何ですか? my.ini は、MySQL データベースで使用される設定ファイルです...
フロントエンド開発者がよく遭遇する問題は、ユーザーに情報を提示するためのポップアップ ウィンドウを作...
目次序文デザイン成し遂げるまとめ序文最近は、いつも延々とスワイプしています。 Weibo をチェック...
マシンに MySQL バージョン 5.0 がすでに存在する場合は、最新バージョンの MySQL のイ...
効果デモ.html <html> <ヘッド> <メタ文字セット=&qu...
テーブルとは何ですか?セルセルで構成されています。表では、<td> の数は、<tr...
この記事では、適切な形式を使用して IP アドレス データをデータベースに保存し、IP アドレスを簡...
目次序文インライン要素の中央揃えテキストを垂直に中央揃え要素を水平方向に中央揃えにするブロックレベル...
inputボックスを純粋な数字のみに制限する1、onkeyup = "value=valu...