最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

gorm操作MySql數據庫的方法

 更新時間:2021年03月06日 12:06:18   作者:fbbqt  
這篇文章主要介紹了gorm操作MySql數據庫的方法,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下

1、表中字段區(qū)分大小寫的設置

在使用gorm查詢的時候,會出現賬戶名Aa是一樣的情況,是因為mysql默認不區(qū)分大小寫造成的

1.問題產生的原因

MySQL在Windows下都不區(qū)分大小寫。
MySQL在Linux下數據庫名、表名、列名、別名大小寫規(guī)則是這樣的:

1、數據庫名與表名是嚴格區(qū)分大小寫的;
2、表的別名是嚴格區(qū)分大小寫的;
3、列名與列的別名在所有的情況下均是忽略大小寫的;
4、變量名也是嚴格區(qū)分大小寫的;

MySQL在查詢字符串時是大小寫不敏感的,在編繹MySQL時一般以ISO-8859字符集作為默認的字符集,這個字符集對大小寫不敏感,因此在比較過程中中文編碼字符大小寫轉換造成了這種現象。

2、mysql中的排序規(guī)則

utf8_bin將字符串中的每一個字符用二進制數據存儲,區(qū)分大小寫。utf8_genera_ci不區(qū)分大小寫,ci為case insensitive的縮寫,即大小寫不敏感。utf8_general_cs區(qū)分大小寫,cs為case sensitive的縮寫,即大小寫敏感。(注意:在Mysql5.6.10版本中,不支持utf8_genral_cs?。?!

3、解決辦法

 1、binary關鍵字

直接修改sql查詢語句,在要查詢的字段前面加上binary關鍵字即可。(不推薦)

1、在每一個條件前加上binary關鍵字

select * from user where binary username = 'admin' and binary password = 'admin';

2、將參數以binary('')包圍

select * from user where username like binary('admin') and password like binary('admin');

2、修改Collation屬性

創(chuàng)建表時,直接設置表的collate屬性為utf8_general_cs或者utf8_bin;如果已經創(chuàng)建表,則直接修改字段的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設置表中字段區(qū)分大小寫)

`gorm:"unique" sql:"type:VARCHAR(255) CHARACTER SET utf8 COLLATE utf8_bin"`

到此這篇關于gorm操作MySql數據庫的方法的文章就介紹到這了,更多相關gorm操作MySql數據庫內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • MySQL?Workbench基本使用示例詳解

    MySQL?Workbench基本使用示例詳解

    MySQLWorkbench是一款由MySQL官方開發(fā)的統(tǒng)一可視化工具,用于數據庫管理、數據建模和SQL開發(fā),它支持Windows、Linux和macOS操作系統(tǒng),提供圖形界面簡化復雜數據庫任務,感興趣的朋友跟隨小編一起看看吧
    2025-01-01
  • Navicat連接虛擬機mysql常見錯誤問題及解決方法

    Navicat連接虛擬機mysql常見錯誤問題及解決方法

    這篇文章主要介紹了Navicat連接虛擬機mysql常見錯誤問題及解決方法,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-11-11
  • MySQL Binlog 日志監(jiān)聽與 Spring 集成實戰(zhàn)場景

    MySQL Binlog 日志監(jiān)聽與 Spring 集成實戰(zhàn)場景

    MySQL 的二進制日志(binlog)有三種常見的格式:Statement 模式、Row 模式和Mixed 模式,這篇文章主要介紹了MySQL Binlog 日志監(jiān)聽與 Spring 集成實戰(zhàn),需要的朋友可以參考下
    2024-12-12
  • MySQL全文索引應用簡明教程

    MySQL全文索引應用簡明教程

    這篇文章主要介紹了MySQL全文索引應用簡明教程,需要的朋友可以參考下
    2016-10-10
  • Linux系統(tǒng)下修改mysql字符集為UTF8步驟

    Linux系統(tǒng)下修改mysql字符集為UTF8步驟

    大家好,本篇文章主要分享的是Linux系統(tǒng)下修改mysql字符集為UTF8步驟,感興趣的同學趕快來看一看吧,對你有幫助的話記得收藏一下吧,方便下次瀏覽
    2021-12-12
  • 為什么mysql字段要使用NOT NULL

    為什么mysql字段要使用NOT NULL

    數據庫字段一定要設置為 not null,不然會有很大的bug,下面就一起來介紹一下,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-05-05
  • MYSQL數據庫Innodb?引擎mvcc鎖實現原理

    MYSQL數據庫Innodb?引擎mvcc鎖實現原理

    這篇文章主要介紹了MYSQL數據庫Innodb?引擎mvcc鎖實現原理,但是mvcc?的實現原理是什么呢?下文我們就來實例說明來mvcc?的實現原理,感興趣的小伙伴可以參考一下
    2022-05-05
  • MySQL通過binlog恢復數據

    MySQL通過binlog恢復數據

    通過了解binlog日志的相關配置,簡單掌握通過binlog對數據庫進行數據恢復操作。有此需求的朋友可以參考下
    2021-05-05
  • MySQL explain 中列的取值及含義講解

    MySQL explain 中列的取值及含義講解

    這篇文章主要介紹了MySQL explain 中列的取值及含義,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-03-03
  • Mysql systemctl start mysqld報錯的問題解決

    Mysql systemctl start mysqld報錯的問題解決

    最近運行Mysql發(fā)現報錯,本文就來介紹一下Mysql systemctl start mysqld報錯的問題解決,需要的朋友們下面隨著小編來一起學習學習吧
    2021-06-06

最新評論

铁力市| 佳木斯市| 江孜县| 新绛县| 三台县| 阳曲县| 东安县| 潼关县| 顺义区| 长宁区| 常熟市| 桂平市| 阳朔县| 嘉黎县| 马尔康县| 察隅县| 阿拉尔市| 响水县| 花垣县| 黄平县| 土默特左旗| 广水市| 安西县| 宜章县| 华蓥市| 宜兴市| 石家庄市| 潼南县| 勃利县| 宝兴县| 突泉县| 潼南县| 建德市| 宜州市| 炎陵县| 晋城| 革吉县| 布尔津县| 治多县| 高阳县| 庄河市|