貴州省住房和城鄉(xiāng)建設(shè)管理委員會(huì)網(wǎng)站/成都seo培
國(guó)產(chǎn)精品ORM框架-SqlSugar詳解 SqlSugar初識(shí) 專(zhuān)題一-CSDN博客
sqlsugar 官網(wǎng)-CSDN博客
4、進(jìn)階功能
5、集成整合
6、腳手架應(yīng)用
4、進(jìn)階功能
4.1、生命周期
Queryable 什么時(shí)候操作庫(kù)
Queryable是一個(gè)引用類(lèi)型
Queryable拷貝機(jī)制
4.2、執(zhí)行Sql
方法列表
方法名 描述 返回值
SqlQuery< T > 查詢(xún)所有返回實(shí)體集合 List
SqlQuery<T,T2> 可以返回2個(gè)結(jié)果集 Tuple<List, List>
SqlQuerySingle 查詢(xún)第一條記錄 T
SqlQueryDynamic 查查詢(xún)所有返回匿名對(duì)象 dynamic
GetDataTable 查詢(xún)所有 DataTable
GetDataReader 讀取DR需要手動(dòng)釋放DR DataReader
GetDataSetAll 獲取多個(gè)結(jié)果集 DataSet
ExecuteCommand 返回受影響行數(shù),一般用于增刪改 int
GetScalar 獲取首行首列 object
GetString 獲取首行首列 string
GetInt 獲取首行首列 int
GetLong 獲取首行首列 long
GetDouble 獲取首行首列 Double
GetDecimal 獲取首行首列 Decimal
GetDateTime 獲取首行首列 DateTime
SqlQuery< T > 查詢(xún)所有返回實(shí)體集合 List
SqlQuery<T,T2> 可以返回2個(gè)結(jié)果集 Tuple<List, List>
SqlQuerySingle 查詢(xún)第一條記錄 T
SqlQueryDynamic 查查詢(xún)所有返回匿名對(duì)象 dynamic
GetDataTable 查詢(xún)所有 DataTable
GetDataReader 讀取DR需要手動(dòng)釋放DR DataReader
GetDataSetAll 獲取多個(gè)結(jié)果集 DataSet
ExecuteCommand 返回受影響行數(shù),一般用于增刪改 int
GetScalar 獲取首行首列 object
GetString 獲取首行首列 string
GetInt 獲取首行首列 int
GetLong 獲取首行首列 long
GetDouble 獲取首行首列 Double
GetDecimal 獲取首行首列 Decimal
GetDateTime 獲取首行首列 DateTime

4.3 數(shù)據(jù)導(dǎo)入和更新+驗(yàn)證
Excel導(dǎo)入到數(shù)據(jù)庫(kù)
困難點(diǎn): 數(shù)據(jù)的驗(yàn)證
insert into not exists (只插入不更新)
非主鍵用例
完整用例(增、刪、改)
4.4、并發(fā)控制、更新、版本控制
并發(fā)累計(jì)(累加)
防止提交覆蓋(樂(lè)觀鎖)
不依賴(lài)庫(kù)同步
4.5、悲觀鎖--數(shù)據(jù)庫(kù)中支持的鎖
悲觀鎖等待模式
悲觀鎖排它模式
4.6、事務(wù)
事務(wù)ACID:
原子性(Atomicity)
原子性是指事務(wù)是一個(gè)不可分割的工作單位,事務(wù)中的操作要么都發(fā)生,要么都不發(fā)生。 一榮俱
榮 一損俱損
一致性(Consistency)
事務(wù)前后數(shù)據(jù)的完整性必須保持一致。
隔離性(Isolation)
事務(wù)的隔離性是多個(gè)用戶(hù)并發(fā)訪問(wèn)數(shù)據(jù)庫(kù)時(shí),數(shù)據(jù)庫(kù)為每一個(gè)用戶(hù)開(kāi)啟的事務(wù),不能被其他事務(wù)
的操作數(shù)據(jù)所干擾,多個(gè)并發(fā)事務(wù)之間要相互隔離。
持久性(Durability)
持久性是指一個(gè)事務(wù)一旦被提交,它對(duì)數(shù)據(jù)庫(kù)中數(shù)據(jù)的改變就是永久性的,接下來(lái)即使數(shù)據(jù)庫(kù)發(fā)生
故障也不應(yīng)該對(duì)其有任何影響
單庫(kù)事務(wù)
多庫(kù)事務(wù)(跨庫(kù)事務(wù))SqlSugarClient/ISqlSugarClient事務(wù)
事務(wù)語(yǔ)法糖
4.7、打包提交
不合適的場(chǎng)景:
1、批量插入數(shù)據(jù),不適合----大數(shù)據(jù)量的插入
在前面我們講到了事務(wù),就是可以在一次操作中,把對(duì)于數(shù)據(jù)庫(kù)的多個(gè)操作綜合起來(lái),一次提交保證原
子性,一致性,持久性,隔離性;
那么在對(duì)于數(shù)據(jù)庫(kù)的多個(gè)提交中,我們也可以通過(guò)把多個(gè)操作一次打包。然后統(tǒng)一提交操作;
4.8、AOP日志、攔截
AOP:面向切面編程;
在XX行為之前加點(diǎn)行為,在xx行為之后,加點(diǎn)行為;
數(shù)據(jù)庫(kù)的操作---執(zhí)行Sql語(yǔ)句