mysql的UseAffectedRows問題 以及其他常見配置說明


遇到MySQL中on duplicate key update語句返回值不正確:
在server5.1.*的返回分別為insert=1,update=3,nochange=2
在server5.5.*的返回分別為insert=1,update=2,nochange=1
應返回:insert=1,update=2,nochange=0
使用mysql-connector-java-*.jar不當導致。修正為:jdbc:mysql://ip:port/db?useAffectedRows=true&…
useAffectedRows的含義 :是否用受影響的行數替代查找到的行數來返回數據,也就是查找到了 但卻不一定真正修改了
 
其他常見常用參數:
UsePerformanceMonitor,userperfmon, perfmon:是否啟用性能監視,默認 false
IgnorePrepare:    是否忽略 Prepare() 調用,默認 true
UseProcedureBodies,procedure bodies:是否檢查存儲過程體、參數的有效性,默認 true
AutoEnlist:    是否自動使用活動的連接,默認 true
TreatTinyAsBoolean:是否將 TINYINT(1) 列視為布爾型,默認 true
AllowUserVariables:是否允許 SQL 中出現用戶變量,默認 false
FunctionsReturnString:所有服務器函數是否按返回字符串處理,默認 false
UseAffectedRows:是否用受影響的行數替代查找到的行數來返回數據,默認 false
Keepalive:    保持 TCP 連接的秒數,默認0,不保持。
ConnectionLifeTime:連接被銷毀前在連接池中保持的最少時間(秒)。默認 0
Pooling:    是否使用線程池,默認 true
MinimumPoolSize, min pool size:線程池中允許的最少線程數,默認 0
MaximumPoolSize,max pool size:線程池中允許的最多線程數,默認 100
ConnectionReset:連接過期后是否自動復位,默認 false
CharacterSet, charset:向服務器請求連接所使用的字符集,默認:無


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM