IFNOTEXISTS。
成都創(chuàng)新互聯(lián)是一家專注于成都網(wǎng)站建設、成都做網(wǎng)站與策劃設計,貴池網(wǎng)站建設哪家好?成都創(chuàng)新互聯(lián)做網(wǎng)站,專注于網(wǎng)站建設十多年,網(wǎng)設計領域的專業(yè)建站公司;建站業(yè)務涵蓋:貴池等地區(qū)。貴池做網(wǎng)站價格咨詢:13518219792
根據(jù)查詢相關公開信息顯示,mysql中,指定要創(chuàng)建的數(shù)據(jù)不存在,必須使用IFNOTEXISTS關鍵字,否則將產(chǎn)生錯誤。
MySQL是一個關系型數(shù)據(jù)庫管理系統(tǒng),由瑞典MySQLAB公司開發(fā),屬于Oracle旗下產(chǎn)品。
可能是你的INI設置不對,請用下面的命令指定系統(tǒng)默認的INI文件試試看:
e:\mysql5.0.51a\bin\mysqld.exe --defaults-file=e:\mysql5.0.51a\my.ini MySQL注意里面的e:\mysql5.0.51a是我機器的路徑,請修改你機器上MYSQL的安裝路徑。
你把這張表的?date和ip字段聯(lián)合設置為唯一索引。
ALTER?TABLE?`log`?ADD?UNIQUE?`date_ip`?(`date`,?`ip`);
然后你就大膽的insert數(shù)據(jù)吧。有重復的就報錯插入失敗。然后接著插入下一條就OK。
事情的起因是這樣的,在練手項目的時候,表的一個關聯(lián)字段并沒有建立外鍵關系,只是名義上的外鍵關系,
而在修改數(shù)據(jù)的時候,考慮到安全性的問題,確保運行不會報異常的話,每次在做修改字段的時候,都需要先查
尋該字段是否存在,若不存在則需要主動添加。如以下的 userId,是并沒有外鍵的!
如果每次都先查詢再修改的話,是相當影響效率的,所以呢,mysql也幫我們準備好了解決方式,感謝mysql團隊
1. ** 首先,你需要一個觸發(fā)條件,也就是唯一索引啦,這是必要的!!! 譬如我想我的userId不重復,又想達到該效果,就需要把該字段設置為唯一索引,譬如:
2.? 語法:?duplicate key
? ? ? ? 怎么使用已經(jīng)很明顯了吧 :
???insert into 表名(字段1,userId,字段3,....) values(值1,值,值3,....)?意思是,當userId不重復時,則會觸發(fā)這個插入語句
? ? ????????update 字段1=值1,字段2=值2 ....? 就是userId的值已經(jīng)存在時,則觸發(fā)這個修改語句?
? ? ? ? 那么我的語句就是:
3. 最后
? ? 順帶一提,可以在myBatis的xml文件中獲取當前時間哦,使用? now()?
? ? 學而時記之,人笨只能多寫啦,加油哦!!!.....
本文名稱:mysql不存在怎么設置 mysql字段不存在則添加
文章路徑:http://muchs.cn/article4/dosciie.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供小程序開發(fā)、品牌網(wǎng)站建設、網(wǎng)站維護、網(wǎng)站設計、面包屑導航、標簽優(yōu)化
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)