通过Mybatis建表问题
生活随笔
收集整理的這篇文章主要介紹了
通过Mybatis建表问题
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
如果建表語句的靜態(tài)的那完全不用Mybatis,在數(shù)據(jù)庫(kù)就可以建。最近工作中遇到問題需要在Mybatis動(dòng)態(tài)建表,嘗試來解決這個(gè)問題。
首先我們拿到建表語句 String sqlText = “…” 。
正確方案
應(yīng)該將表名跟建表語句分開,使之大致拼成一個(gè)CREATE TABLE 的SQL,如:
<update id="createNewTable">CREATE TABLE ${tableName} AS ${sqlText}</update>錯(cuò)誤方案
<update id="createNewTable">${sqlText}</update>這是我最先一拍腦袋想到的,但是這句話被解析的時(shí)候會(huì)解析成了一個(gè)占位符“?”,本身很好理解,Mybatis找不到具體的SQL語句報(bào)錯(cuò)。
小提示:
1.建表語句的參數(shù)應(yīng)該使用不帶引號(hào)的 ‘$ {…}’
2.應(yīng)為選擇了$,所以有可能會(huì)受到SQL注入的攻擊,需要具體邏輯具體校驗(yàn)
轉(zhuǎn)載注明出處:www.meidanlong.com 😃
總結(jié)
以上是生活随笔為你收集整理的通过Mybatis建表问题的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 中班优秀游戏教案《桥》反思
- 下一篇: 快速切换npm源