文章详情页
如何防止 MySQL 中纯数字数据的 Insert?
浏览:226日期: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. css3 - 微信前端页面遇到的transition过渡动画的bug2. 网页爬虫 - 关于Python的编码与解码问题3. docker网络端口映射,没有方便点的操作方法么?4. javascript - vue 父子组件传递数据5. html5上的ICON一般去哪里找?6. selenium-selenium-webdriver - python 将当前目录加入到 环境变量7. css - input间的间距和文字上下居中8. MYSQL 根据两个字段值查询 但两个值的位置可能是互换的,这个怎么查?9. css - 有没有什么办法用背景色把部分border给遮挡呢?10. css3 - 微信小程序如何把radio改成2个选择按钮的样式
排行榜

网公网安备