通过MySQL模式或PHP检查输入数据?
假设我想检查注释是否重复 我有两个选择: 1创建对数据库的查询并进行检查: 从注释中选择*,其中content=$santized\u content和post\u id=$id 2为注释和post_id创建唯一索引,并捕获MySQL错误 对于我复杂繁忙的应用程序来说,尽可能减少对数据库的查询是很重要的。然而,第一个选项更为常见和可读 你可以把这个问题推广到其他情况。我更喜欢第二种情况 您的PHP脚本将使用更少的代码。 无论注释是否重复,它都会自动检查。通过MySQL模式或PHP检查输入数据?,php,mysql,database,validation,schema,Php,Mysql,Database,Validation,Schema,假设我想检查注释是否重复 我有两个选择: 1创建对数据库的查询并进行检查: 从注释中选择*,其中content=$santized\u content和post\u id=$id 2为注释和post_id创建唯一索引,并捕获MySQL错误 对于我复杂繁忙的应用程序来说,尽可能减少对数据库的查询是很重要的。然而,第一个选项更为常见和可读 你可以把这个问题推广到其他情况。我更喜欢第二种情况 您的PHP脚本将使用更少的代码。 无论注释是否重复,它都会自动检查。 这就是UNIQUE的功能。MySQL肯定
这就是UNIQUE的功能。MySQL肯定比PHP快。我总是希望对合适的键使用失败的插入或替换,而不是在PHP中进行检查 唯一的例外可能是您的键变得非常复杂,这显然会为针对该表运行的所有查询在MySQL上产生开销。然而,对于这个问题,没有一个一刀切的答案:什么太复杂而不值得去做。这在很大程度上取决于现实生活中的测试