資料庫筆記

2022-03-18 12:58:31 字數 1583 閱讀 5594

1.mysql在linux下資料庫名、表名、列名、別名大小寫規則是這樣的:

1). 資料庫名與表名是嚴格區分大小寫的;

2). 表的別名是嚴格區分大小寫的;

3). 列名與列的別名在所有的情況下均是忽略大小寫的;

4). mysql在查詢字串時是大小寫不敏感的。如某字段值需要區分大小寫,可在定義該字段時指定binary屬性。

2.mysql中控制資料庫名和表名的大小寫敏感由引數lower_case_table_names控制,為0時表示區分大小寫,為1時,表示將名字轉化為小寫後儲存,不區分大小寫。

在/etc/my.cnf 中的[mysqld]後新增新增lower_case_table_names=1,重啟mysql服務,這時已設定成功:不區分表名的大小寫;

3. mysql儲存的字段是不區分大小寫的。這個有點不可思議。尤其是在使用者註冊的業務時候,會出現笑話。所以還是嚴格限制大小寫敏感比較好。

如何避免字段內容區分大小寫。就是要新增欄位的校驗規則。字段值需要設定binary屬性,設定的方法有多種:

1). 建立時設定:create table t(a varchar(10) binary);

2). 使用alter修改:alter table `tablename` modify column `cloname` varchar(45) binary;

3). mysql table editor中直接勾選binary項。

4). 使用資料庫管理工具改,注意事項:不能通過直接改table的collection為bin(如果資料庫字元編碼屬性為utf-8則為utf8_bin)來使所有欄位都生效,必須乙個字段乙個欄位的改

4. 字段值的大小寫由mysql的校對規則來控制。提到校對規則,就不得不說字符集。字符集是一套符號和編碼,校對規則是在字符集內用於比較字元的一套規則。

一般而言,校對規則以其相關的字符集名開始,通常包括乙個語言名,並且以_ci(大小寫不敏感)、_cs(大小寫敏感)或_bin(二元)結 束 。

比如 utf8字符集,utf8_general_ci,表示不區分大小寫,這個是utf8字符集預設的校對規則;utf8_general_cs表示區分大小 寫,utf8_bin表示二進位制比較,同樣也區分大小寫 。

參考:blog.csdn.net/naguang/article/details/8590643

5.查詢mysql 哪些表正在被鎖狀態(兩種方式)

method 1:show open tables where in_use > 0;

method 2:show processlist檢視資料庫中表的狀態,是否被鎖;

解鎖鎖定的表:kill

id

資料庫筆記

資料庫mariadb 基本操作 mysql secure installation 配置嚮導 mysql uroot p 登陸資料庫 enter password 輸入密碼 welcome to the mariadb monitor.commands end with or g.your mari...

資料庫筆記

1.資料庫分頁查詢 select from table limit startline,pagesize 從startline開始查詢pagesize大小行資料 2.級聯操作 當存在外來鍵約束時,主表若想刪除或修改資料,必須先修改副表中相關聯的資料.如果想直接修改或刪除主表資料,同時改變副表 資料就...

資料庫筆記

筆記記錄 左外連線left join 涉及表 student,fee,fee info三張表,截圖依次如下 兩張表應用 查詢1 查詢2 對比就可以看出區別,查詢2比查詢1多1條鳳姐的記錄 此條記錄的s.number沒有對應的f.feeid 查詢1 s.number找不到對應的f.feeid時,會自動...