python mysql library popular_python之mysql入门详解(四)
下面來介紹事務和視圖。
事務與前面介紹的有所不同的是,它是對表進行操作,不是簡單的查詢(不動表的數據)
一,事務四大特性
原子性:事務中的全部操作在數據庫中是不可分割的,要么全部完成,要么均不執行。
一致性:幾個并行執行的事務,其執行的結果必須與按某一順序串執行的結果相一致。
隔離性:事務的執行不受其他事務的干擾,系統必須執行的中間結果對其他事務必須是透明的。
持久性:對于任意已提交的事務,系統必須保證該事務對數據庫的改變不被丟失,即使數據庫出現故障。
二,使用事務的情景:insert into/ update /delete
show create table students; #查詢表的創建語句 ENGINE=InnoDB 數據類型是innodb
是支持事務的。
Begin; #開始操作事務
。。。
Commit; #提交編輯的事務,不提交不會執行mysql命令
Rollback; #回滾(撤銷)
事務主要是運用在與python交互的時候,就是用python直接執行mysql命令,后面會用代碼詳解。
索引
創建縮影主要是用來提高查詢的速度,相當于告訴數據庫我要查詢什么,而不是每個字段都遍歷。
查看索引
Show index from 表名
創建索引
Create index 索引名 on 表名(字段(長度))
查看執行的時間
開啟運行時間的監測
Set profiling=1;#開啟
執行查詢語句
Select * from areas where title=’大同市’; #areas已有的表名
查看執行的時間
Show Profiles;
視圖
視圖是將很復雜的數據庫做一個精簡,把需要的數據提取出來,單獨創建一個“表”,方便查詢,所以視圖還是用來查詢的。
mysql> create view v_stu_sub_sco as #將as后面的查詢語句賦與v_stu_sub_sco
select students.*,subject.title,scores.score[批注] from scores
inner join students on scores.stuid=students.id
inner join subject on scores.subid=subject.id;
[批注]代表查詢students的所有字段,查詢subject表的標題字段,查詢scores表的分數字段。
如果只想查學生名字,對應科目和分數,就可以這樣寫select 語句了。
Select name,title,score from v_stu_sub_sco; ##對于上面有的字段都可以進行相應的查詢。
總結
以上是生活随笔為你收集整理的python mysql library popular_python之mysql入门详解(四)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: bim 模型web页面展示_BIM+装配
- 下一篇: linux cmake编译源码,linu