MySQL相关语句使用注意点
mysql相關(guān)使用注意
resultType是sql語(yǔ)句查詢結(jié)果集的封裝類型,也就是說(shuō)把sql查詢的結(jié)果封裝在bean里返回回去,是存數(shù)據(jù)用的。
paramType是從傳過(guò)來(lái)的Bean中取數(shù)據(jù)放進(jìn)例如insert語(yǔ)句的values中當(dāng)實(shí)參用,是取數(shù)據(jù)用的。
2.<![CDATA[ xxx ]]>在xml文件中使用可以避免xxx被解析轉(zhuǎn)義成其他字符的意思。如<![CDATA[ > ]]>表示xmL文件中的大于號(hào)(>)。
3.jdbcType可以指定某個(gè)參數(shù)的具體類型。
如#{beginMonth,jdbcType=VARCHAR}表示指定了beginMonth的類型為varchar
4.to_date(“要轉(zhuǎn)換的字符串”,“轉(zhuǎn)換的格式”) 兩個(gè)參數(shù)的格式必須匹配,否則會(huì)報(bào)錯(cuò)。即按照第二個(gè)參數(shù)的格式解釋第一個(gè)參數(shù)。
to_char(日期,“轉(zhuǎn)換格式” ) 即把給定的日期按照“轉(zhuǎn)換格式”轉(zhuǎn)換。
5.case when 條件語(yǔ)句1 then 如果條件語(yǔ)句1成立,執(zhí)行then之后的語(yǔ)句
when 條件語(yǔ)句2 then 如果條件語(yǔ)句2成立,執(zhí)行then之后的語(yǔ)句
…
else 如果上述when條件語(yǔ)句都不成立,則執(zhí)行else之后的語(yǔ)句
end(end表示所有相關(guān)聯(lián)的語(yǔ)句執(zhí)行結(jié)束)
6.count() count(1) 兩者比較。主要還是要count(1)所相對(duì)應(yīng)的數(shù)據(jù)字段。
如果count(1)是聚合索引,id,那肯定是count(1)快。但是差的很小的。
因?yàn)閏ount(),自動(dòng)會(huì)優(yōu)化指定到那一個(gè)字段。所以沒必要去count(?),用count(*),sql會(huì)幫你完成優(yōu)化的
7.IFNULL(expression, alt_value)
如果第一個(gè)參數(shù)的表達(dá)式 expression 為 NULL,則返回第二個(gè)參數(shù)的備用值alt_value),否則返回expression本身所代表的值。
8.float和double都是采用二進(jìn)制的格式存儲(chǔ)的,decimal在存儲(chǔ)時(shí)采用字符串存儲(chǔ),能夠很好地保留小數(shù)地精度。存儲(chǔ)了一個(gè)準(zhǔn)確(精確)的數(shù)字表達(dá)法,不存儲(chǔ)值的近似值。
9.decimal有更多的位數(shù)保存數(shù)值
decimal:數(shù)字型,128bit,不存在精度損失,常用于銀行帳目計(jì)算。(28個(gè)有效位)
decimal 數(shù)據(jù)類型最多可存儲(chǔ) 38 個(gè)數(shù)字,所有數(shù)字都能夠放到小數(shù)點(diǎn)的右邊。
10.selectKey返回最近一次插入的id,order屬性設(shè)置為BEFORE這個(gè)就是先執(zhí)行LAST_INSERT_ID()再去操作插入語(yǔ)句,而AFTER正好相反。
如果數(shù)據(jù)庫(kù)中id為自增的方式,將selectKey的order參數(shù)置為AFTER才會(huì)返回正確的結(jié)果
11.func_nextval()函數(shù)可以獲取一個(gè)自增的序列值
5.
xxx,
yyy,
zzz,
prefix=“(” 表示在trim包裹的內(nèi)容前加一個(gè)"(“, 《==前綴
suffix=”)" 表示在trim包裹的內(nèi)容后加一個(gè)")“, 《==后綴
suffixOverrides=”," 表示刪除最后一個(gè)",",即zzz后面的“,”。
代碼注釋規(guī)則
注釋規(guī)則:
1.方法名以及方法名表示的意義
2.@Author 自己的域名
3.@Param 方法的參數(shù)名以及參數(shù)名表示的意思
4.@return 方法的返回值
5.@since jdk使用的版本號(hào)
6.@version 開發(fā)的版本號(hào)
7.@date 創(chuàng)建編寫的時(shí)間
包結(jié)構(gòu)
controller(控制層)
dao(dao層)
entity(基礎(chǔ)層)
dto(為業(yè)務(wù)領(lǐng)域相關(guān)的名稱)
mapper(與dao層相關(guān)聯(lián)的mapper文件)
po(實(shí)用工具自動(dòng)生成,無(wú)需手寫)
vo(一般為網(wǎng)頁(yè)名稱)
service(服務(wù)層)
impl(實(shí)現(xiàn)接口的類)
接口(interface)
總結(jié)
以上是生活随笔為你收集整理的MySQL相关语句使用注意点的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Spring Cloud:统一异常处理
- 下一篇: 计算机毕业设计Java新生报到管理(源码