gorm 返回多条数据_如何优雅的操作数据库?
今天要介紹的這個python第三方庫非常厲害,完美操作各種數(shù)據庫。
名字叫records,在網上很少有這個庫的相關資料,但是在開源社區(qū)可是很火熱的哦。
如果這還不能打消你的顧慮,再告訴你一件事:如果你用python編程,你一定聽過requests,這兩個庫是同一個作者寫的。
01、快速使用
使用步驟:
1、連接數(shù)據庫,返回db數(shù)據庫對象
2、db對象執(zhí)行sql語句
獲取數(shù)據庫的格式是標準的URL格式。
如果使用的不是mysql數(shù)據庫,只需要換掉數(shù)據庫類型就可以了:
02、創(chuàng)建表
03、插入單條數(shù)據
records支持使用 :variable定義變量,通過參數(shù)傳入完成動態(tài)傳值,在需要動態(tài)加載數(shù)據的時候非常有用:
04、插入多條數(shù)據
sql語句在執(zhí)行多條數(shù)據操作的時候非常不方便,尤其是當值還是變化的時候。
records提供的bulk_query方法能快捷的插入和更新多條數(shù)據:
05、數(shù)據查詢
查詢到數(shù)據以后,可以通過all()方法獲取所有的記錄,支持3種類型。
◆ 默認是自己封裝的RecordCollection對象
◆ 也可以通過as_dict=True參數(shù)轉成字典形式
◆ 可以通過as_ordereddict=True轉成排序字典形式
06、簡潔的數(shù)據庫事務支持
數(shù)據庫事務是經常需要使用到的數(shù)據庫操作,他通常是為了保持數(shù)據原子性和一致性。
比如一個轉賬的數(shù)據庫操作:
1、從yuze賬號中讀取余額
2、對yuze賬號余額減去轉賬-400
3、從chaoge賬號中把余額讀出來
4、對chaoge賬號做加法操作(+400)
我們必須保證這4步同時執(zhí)行成功,要么同時都不成功。
如果前2步已經執(zhí)行成功,但是到第3步發(fā)生了錯誤導致后面都不能執(zhí)行,就會出現(xiàn)問題:
yuze的賬號被扣了錢,但是chaoge的賬號卻沒有加錢。
通過數(shù)據庫事務就能避免這種情況。
07、數(shù)據導出為json
數(shù)據庫數(shù)據得到以后還需要進一步的操作,比如保存起來。
08、數(shù)據導出到Excel文件
最常用的是如果需要各種各樣的報表,需要放到excel文件中保存起來。
導出的數(shù)據效果:
09、總結
◆ records支持多種不同的數(shù)據庫;
◆ records的方法非常簡單和統(tǒng)一,不像pymysql還需要記住如游標對象這樣的底層信息;
◆ 自動實現(xiàn)上下文管理器,不需要關注鏈接狀態(tài);
◆ 支持 :variable方言,以安全的形式進行動態(tài)參數(shù)傳遞,防止sql語句不規(guī)范導致的安全問題;
◆ 支持數(shù)據庫事務,保持數(shù)據的原子性和一致性;
◆ 輕松導出為json, yaml, xls, xlsx, pandas, html等多種數(shù)據格式。
◆ 源碼非常簡單,你一定看得懂。
本文由檸檬班雨澤老師原創(chuàng),轉載需注明出處!
總結
以上是生活随笔為你收集整理的gorm 返回多条数据_如何优雅的操作数据库?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: window查看端口号使用_踩坑搭建vu
- 下一篇: token验证_Swagger中添加To