文章詳情頁
如何防止 MySQL 中純數(shù)字?jǐn)?shù)據(jù)的 Insert?
瀏覽:122日期:2022-06-21 16:44:42
問題描述
比如我不希望 username 是純數(shù)字的,如果程序 insert 的數(shù)據(jù),username 是純數(shù)字的,就返回 mysql 數(shù)據(jù)格式錯誤,有這種功能嗎?
問題解答
回答1:通過儲存過程或者觸發(fā)器來實現(xiàn),但是這種邏輯最好還是由代碼層來控制
回答2:先說結(jié)論: 贊同LS的觀點,一般會寫在程序里面做驗證,數(shù)據(jù)庫只做基礎(chǔ)的比如unique這些的約束
如果真的要在數(shù)據(jù)庫做的話,一般會寫trigger
然后貌似還有add constraint check,但是mysql里面即使支持這個東西,也不會在存儲之前做檢查(all engines)
http://stackoverflow.com/questions/16005283/is-it-possible-to-enforce-data-checking-in-mysql-using-regular-expression
回答3:程序邏輯問題都不應(yīng)該交給數(shù)據(jù)庫去處理,或者應(yīng)該把它作為最后的驗證防線。
回答4:在提交前或者提交時就檢測。
回答5:這種基礎(chǔ)驗證也放在數(shù)據(jù)庫里來做,這不是給數(shù)據(jù)庫徒增壓力么?大家都在給它減負(fù)
相關(guān)文章:
1. html5 - ElementUI table中el-table-column怎么設(shè)置百分比顯示。2. showpassword里的this 是什么意思?代表哪個元素3. javascript - table列過多,有什么插件可以提供列排序和選擇顯示列的功能4. css - 網(wǎng)頁div區(qū)塊 像蘋果一樣可左右滑動 手機(jī)與電腦5. html - vue項目中用到了elementUI問題6. javascript - 數(shù)組的過濾和渲染7. python - 為什么正常輸出中文沒有亂碼,zip函數(shù)之后出現(xiàn)中文編程unicode編碼的問題,我是遍歷輸出的啊。8. 對mysql某個字段監(jiān)控的功能9. python - 使用readlines()方法讀取文件內(nèi)容后,再用for循環(huán)遍歷文件與變量匹配時出現(xiàn)疑難?10. JavaScript事件
排行榜

熱門標(biāo)簽