文章详情页
如何防止 MySQL 中纯数字数据的 Insert?
浏览:140日期:2022-06-21 16:44:42
问题描述
比如我不希望 username 是纯数字的,如果程序 insert 的数据,username 是纯数字的,就返回 mysql 数据格式错误,有这种功能吗?
问题解答
回答1:通过储存过程或者触发器来实现,但是这种逻辑最好还是由代码层来控制
回答2:先说结论: 赞同LS的观点,一般会写在程序里面做验证,数据库只做基础的比如unique这些的约束
如果真的要在数据库做的话,一般会写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:程序逻辑问题都不应该交给数据库去处理,或者应该把它作为最后的验证防线。
回答4:在提交前或者提交时就检测。
回答5:这种基础验证也放在数据库里来做,这不是给数据库徒增压力么?大家都在给它减负
相关文章:
1. objective-c - iOS开发支付宝和微信支付完成为什么跳转到了之前开发的一个app?2. mysql优化 - 关于mysql分区3. 请教各位大佬,浏览器点 提交实例为什么没有反应4. 致命错误: Class ’appfacadeTest’ not found5. javascript - ionic2 input autofocus 电脑成功,iOS手机键盘不弹出6. python - 管道符和ssh传文件7. css - 移动端字体设置问题8. css - 求推荐适用于vue2的框架 像bootstrap这种类型的9. html5 - 如何实现带阴影的不规则容器?10. javascript - 循环嵌套多个promise应该如何实现?
排行榜
