mysql - thinkphp模型类有防止重复插入的方法吗?

WBOY
풀어 주다: 2016-06-06 20:12:39
원래의
1414명이 탐색했습니다.

我看到防止重复插入有三种方法,http://blog.csdn.net/jbboy/article/detai...

但是看到了thinkPHP的 insert方法,有第二个参数可以设置,$replace,但是这只是第二种防止重复插入的方法啊,不支持第一种吗?

回复内容:

我看到防止重复插入有三种方法,http://blog.csdn.net/jbboy/article/detai...

但是看到了thinkPHP的 insert方法,有第二个参数可以设置,$replace,但是这只是第二种防止重复插入的方法啊,不支持第一种吗?

如果插入的数据来源于表单提交,TP文档里有个叫表单令牌的东西 表单令牌
也可以用TP自动验证中的unique验证某个字段是否唯一文档

第一种是数据库端的操作,当主键或者唯一索引的数值存在时,数据库会返回一个错误信息。不会插入数据。在TP里也可以在模型的自动验证里设置某一自动为'unique'验证方式。TP就会做一次是否存在的检索。

个人觉得,既然不能重复,为保证数据正确,就得从数据库方面做唯一约束,而不是依赖tp模型或任何代码实现,万一插入时候忘记调用模型呢,数据就可能出问题

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿