MyBatis JdbcType 與Oracle、MySql數(shù)據(jù)類型對應(yīng)關(guān)系說明
1. Mybatis JdbcType與Oracle、MySql數(shù)據(jù)類型對應(yīng)列表
Mybatis JdbcType Oracle MySql JdbcType ARRAY JdbcType BIGINT BIGINT JdbcType BINARY JdbcType BIT BIT JdbcType BLOB BLOB BLOB JdbcType BOOLEAN JdbcType CHAR CHAR CHAR JdbcType CLOB CLOB CLOB?>修改為TEXT JdbcType CURSOR JdbcType DATE DATE DATE JdbcType DECIMAL DECIMAL DECIMAL JdbcType DOUBLE NUMBER DOUBLE JdbcType FLOAT FLOAT FLOAT JdbcType INTEGER INTEGER INTEGER JdbcType LONGVARBINARY JdbcType LONGVARCHAR LONG VARCHAR JdbcType NCHAR NCHAR JdbcType NCLOB NCLOB JdbcType NULL JdbcType NUMERIC NUMERIC/NUMBER NUMERIC/ JdbcType NVARCHAR JdbcType OTHER JdbcType REAL REAL REAL JdbcType SMALLINT SMALLINT SMALLINT JdbcType STRUCT JdbcType TIME TIME JdbcType TIMESTAMP TIMESTAMP TIMESTAMP/DATETIME JdbcType TINYINT TINYINT JdbcType UNDEFINED JdbcType VARBINARY JdbcType VARCHAR VARCHAR VARCHAR注意到, MyBatis的JdbcType中部分沒有對應(yīng)到Oracle和Mysql的數(shù)據(jù)類型中(或許由于自己遺漏),不過不用擔(dān)心,后續(xù)大家碰到再具體分析;同時上述對應(yīng)關(guān)系不一定是一一對應(yīng),請大家了解。
大家主要掌握基本的數(shù)字、時間、字符串就足以應(yīng)對日常開發(fā)了。
2. Mybatis JdbcType官方文檔
Mybatis JdbcType官方文檔

查閱Mybatis JdbcType官方文檔是很有必要的!
3. 說明
對于自己不肯定的,調(diào)整代碼多嘗試下,能夠使自己加深印象!
4. 更新日志
2017-04-26 修改內(nèi)容:MySQL中沒有CLOB類型,謝謝@火靈 指正。
Mybatis JdbcType Oracle MySql JdbcType CLOB CLOB CLOB?>修改為TEXT補充知識:MyBatis 指定JdbcType. 如#{name,jdbcType=VARCHAR}
在執(zhí)行SQL時MyBatis會自動通過對象中的屬性給SQL中參數(shù)賦值,它會自動將Java類型轉(zhuǎn)換成數(shù)據(jù)庫的類型。而一旦傳入的是null 程序就無法準(zhǔn)確判斷這個類型應(yīng)該是什么(是Integer?是VARCHAR?還是別的?),就有可能將類型轉(zhuǎn)換錯誤,從而報錯。
加入jdbcType正是為了解決這樣的報錯,需要針對這些可能為空的字段,手動指定其轉(zhuǎn)換時用到的類型。
一般情況下,我們沒有必要按個字段去識別/判斷它是否可以為空,而是將所有的字段都當(dāng)做可以為空,全部手動設(shè)置轉(zhuǎn)換類型。
<insert id='save'parameterType='com.tarena.entity.Cost'>insert into cost values(cost_seq.nextval,#{name,jdbcType=VARCHAR},#{base_duration,jdbcType=INTEGER},#{base_cost,jdbcType=DOUBLE},#{unit_cost,jdbcType=DOUBLE},#{status,jdbcType=CHAR},#{descr,jdbcType=VARCHAR},#{creatime,jdbcType=TIMESTAMP},#{startime,jdbcType=TIMESTAMP},#{cost_type,jdbcType=CHAR})</insert>
其他數(shù)據(jù)類型參照下圖

以上這篇MyBatis JdbcType 與Oracle、MySql數(shù)據(jù)類型對應(yīng)關(guān)系說明就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. python中文本字符處理的簡單方法記錄2. 使用Blazor框架實現(xiàn)在前端瀏覽器中導(dǎo)入和導(dǎo)出Excel3. 如何從Python的cmd中獲得.py文件參數(shù)4. ASP基礎(chǔ)知識Command對象講解5. vscode運行php報錯php?not?found解決辦法6. Python-openpyxl表格讀取寫入的案例詳解7. Python使用Selenium自動進行百度搜索的實現(xiàn)8. JavaScript實現(xiàn)留言板實戰(zhàn)案例9. PHP laravel實現(xiàn)導(dǎo)出PDF功能10. JS中6個對象數(shù)組去重的方法

網(wǎng)公網(wǎng)安備