久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

如何在Mysql數據庫中使用視圖、事務和索引

137次閱讀
沒有評論

共計 1978 個字符,預計需要花費 5 分鐘才能閱讀完成。

自動寫代碼機器人,免費開通

今天就跟大家聊聊有關如何在 Mysql 數據庫中使用視圖、事務和索引,可能很多人都不太了解,為了讓大家更加了解,丸趣 TV 小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。

視圖是對若干張基本表的引用,一張虛表,只查詢語句執行結果的字段類型和約束,不存儲具體的數據(基本表數據發生了改變,視圖也會跟著改變),方便操作,特別是查詢操作,減少復雜的 SQL 語句,增強可讀性。

1.————創建視圖:

create view  視圖名稱 (一般以 v_開頭) as  查詢語句;

2.————查看視圖:

select * from  視圖名稱;

3.————刪除視圖:

drop view  視圖名稱;

事務

1. 特性:四大特性 ACID

(1) 原子性 (Atomicity):一個事務必須被視為一個不可分割的最小工作單元,整個事務 中的所有操作要么全部提交成功,要么全部失敗回滾,對于一個事務來說,不可能只執行其中的一部分操作。

(2) 一致性 (Consistency):數據庫總是從一個一致性的狀態轉換到另一個一致性的狀態。

(3) 隔離性 (Isolation):一個事務所做的修改在最終提交以前,對其他事務是不可見的。

(4) 持久性 (Durability):一旦事務提交,則其所做的修改會永久保存到數據庫。

2. 使用:

(1) 開啟事務:開啟事務后執行修改命令,變更會為護到本地緩存,而不是物理表中。
begin; 或者 start transaction;

(2) 回滾事務:放棄緩存中變更的數據,表示事務執行失敗,回到開始事務的狀態。
rollback;

(3) 提交事務:將緩存中的數據變更維護到物理表中。
commit;

索引

索引是一種特殊的文件 (InnoDB 數據表上的索引是表空間的一個組成部分),它們包含著對數據表里所有記錄的位置信息,更通俗的說,數據庫索引好比是一本書前面的目錄,能加快數據庫的查詢速度。

1. 使用:

(1)————查看索引:

show index from  表名;

(2)————創建索引:

create index  索引名稱  on  表名 (字段名稱 ( 長度));

(3)————刪除索引:

drop index  索引名稱  on  表名;

2. 驗證性能:

(1) 開啟運行時間檢測:

set profiling=1;

(2) 查找第十萬條數據:

select * from test_index where title= ha-99999

(3) 為表建立索引:

create index title_index on test_index(title(10));

(4) 查找第十萬條數據:

select * from test_index where title= ha-99999

(5) 查看執行時間:

show profiles;

如何在 Mysql 數據庫中使用視圖、事務和索引

總結:索引可以極大提升查詢速度,但是創建索引的時間比查詢的速度要慢很多,所以 數據表經常更新時,不適合使用索引,當數據表數據很大時,并且長時間不更新時,建 議使用索引,其他情況不建議使用。

用戶管理

1.————查看用戶: 

select host,user,authentication_string from user;

 ————查看用戶權限:

show grants for  用戶名 @主機;

2.————創建用戶并賦予權限:

grant  權限名稱  on  數據庫名.* to ‘用戶名 @ 主機  identified by ‘密碼 

3.————修改權限: 

grant  權限名稱  on  數據庫名.* to ‘用戶名 @ 主機  where grant option;

  刷新權限:

flush privileges;

4.————修改密碼:

update user set authentication_string=password(‘新密碼) where user= 用戶名 

5.————刪除用戶:
卸載:

drop drop user ‘用戶名 @ 主機 

  手動刪除:

delete from user where user= 用戶名 

  刷新權限:

flush privileges;

自連接

將多張相似表的數據匯總到一個表中,將自己與自己相連接進行查詢。

1.————用法:

select * from  表名  as  別名 1  inner join  表名  as  別名 2  on  條件;

2.————案例:

如何在 Mysql 數據庫中使用視圖、事務和索引

aid 為編號,pid 為所屬編號
查詢山西省的所有城市:

select city.* from areas as cityinner join areas as province 
on city.pid=province.aidwhere province.atitle= 山西省 

如何在 Mysql 數據庫中使用視圖、事務和索引

看完上述內容,你們對如何在 Mysql 數據庫中使用視圖、事務和索引有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注丸趣 TV 行業資訊頻道,感謝大家的支持。

向 AI 問一下細節

正文完
 
丸趣
版權聲明:本站原創文章,由 丸趣 2023-12-04發表,共計1978字。
轉載說明:除特殊說明外本站除技術相關以外文章皆由網絡搜集發布,轉載請注明出處。
評論(沒有評論)
主站蜘蛛池模板: 肥东县| 上饶市| 新疆| 桂林市| 依安县| 巴南区| 建平县| 武安市| 巴彦县| 永济市| 崇文区| 宁远县| 舞钢市| 油尖旺区| 禹州市| 武威市| 莱州市| 洱源县| 天长市| 天等县| 澄迈县| 紫云| 含山县| 巩义市| 宣威市| 锦屏县| 新营市| 介休市| 高尔夫| 玛纳斯县| 连云港市| 万载县| 新绛县| 科技| 延长县| 衡东县| 宝坻区| 六盘水市| 竹溪县| 乐清市| 古交市|