mysql三大范式_MySQL学习笔记
生活随笔
收集整理的這篇文章主要介紹了
mysql三大范式_MySQL学习笔记
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1、數據庫結構設計
1、總-總體流程圖2、分-【提取屬性】業務分析評價的屬性:{用戶,課程主標題,內容,綜合評分,內容實用,簡潔易懂,邏輯分析,發布時間} 問答評論屬性:{類型,標題,內容,關聯章節,筆記標題,筆記內容,發布時間}3、分-【屬性->對象】邏輯設計(1)寬表設計模式:存在數據冗余問題
寬表設計模式(2)數據庫三大范式:解決數據冗余問題
數據庫三大范式(3)反范式設計:空間換時間
主要針對關聯表進行反范式化設計2、數據庫物理設計
(1)常見引擎
| INNODB | Y | 最常用的事務存儲引擎 |
(2)根據INNODB特性優化表
- 根據INNODB特性優化表邏輯:
- 數據庫主鍵替換業務主鍵
- 減少關聯表提高查詢效率【增加了數據冗余】
- 保證數據的一致【建立主外鍵】
- 操作步驟:
- 將表的自增列添加進去
- 將關聯列改造為主外鍵
(3)數據類型
- 優先選擇符合存儲數據需求的最小數據類型
- 謹慎使用ENUM,TEXT字符串類型
- 財務相關,必須使用decimal類型
(4)對象命名
- 庫/表/列 用小寫英文和下劃線
- 禁止使用保留字
- 見名知意
- 臨時表,前綴:tmp,后綴:日期
- 備份表,前綴:bak,后綴:日期
- 所有存儲相同數據的列名和列類型必一致
3、數據庫的訪問
- MAC下連接數據庫:cd /usr/local/mysql/bin/./mysql -uroot -p - Windows下連接數據庫:mysql -u root -p- 查看用戶列表mysql> select user,host from mysql.user;+------------------+-----------+| user | host |+------------------+-----------+| mc_class | 127.0.0.1 || mysql.infoschema | localhost || mysql.session | localhost || mysql.sys | localhost || root | localhost |+------------------+-----------+5 rows in set (0.00 sec)4、開發階段:
(1)創建數據庫賬戶
- 查看創建命令help create user; - 查看mysql支持的插件show plugins; - 創建一個用戶CREATE USER mc_class@'127.0.0.1'IDENTIFIED WITH 'mysql_native_password' by '123456'; - 連接:./mysql -umc_class -p123456 -h127.0.0.1(2)權限的下放和回收
- 查看數據庫支持哪些權限:show privilegesG; - 可以授予的權限-- insert-- delete-- update-- select-- execute - 實戰【授予查詢權限】-- 賦予用戶查詢某表中某列mysql> GRANT select(user,host) on mysql.user to mc_class@'127.0.0.1';Query OK, 0 rows affected (0.01 sec)-- 賦予用戶查詢某表下所有列mysql> GRANT select on mysql.user to mc_class@'127.0.0.1';Query OK, 0 rows affected (0.01 sec)-- 賦予用戶查詢某數據庫下所有表的權限mysql> GRANT select on mysql.* to mc_class@'127.0.0.1';Query OK, 0 rows affected (0.01 sec)--賦予增刪改查mysql> GRANT select,delete,insert,update ON mysql.* To mc_class@'127.0.0.1';Query OK, 0 rows affected (0.01 sec) - 回收用戶權限mysql> REVOKE delete,insert,update ON mysql.* FROM mc_class@'127.0.0.1';Query OK, 0 rows affected (0.01 sec)(3)數據庫對象的創建操作
- DDL建立/修改/刪除數據庫:create/alter/drop databasecreate DATABASE imc_db;建立/修改/刪除表:create/alter/drop table建立/修改/刪除索引:create/alter/drop index清空表:truncate table(先刪除數據,再保留結構,不會有刪除日志)重命名表:rename table建立/修改/刪除:create/alter/drop view 創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的mysql三大范式_MySQL学习笔记的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 17岁花季少女药物中毒致脑死亡!这几个习
- 下一篇: 纯白ITX主板!七彩虹CVN B660I