我正在为我的 BSc 项目编写一个相当大的 Web 应用程序,并使用 MySQL 用 PHP 编写它。
创建 SQL 表时应该使用唯一字段吗?我之所以问这个问题是因为我正在将验证方法写入我的 PHP 中。例如,如果我想检查数据库中是否已存在电子邮件地址,我将首先执行 SQL 语句,查看是否返回任何电子邮件地址,然后将初始 SQL 数据插入数据库中。
如果我只插入初始 SQL 数据,则会在整个语句上引发错误,因为电子邮件地址必须是唯一的。
这是进行验证的正确方法吗?
嗯……这是两个完全不同的事情。通过在数据库中的列上设置约束(例如唯一性),您可以防止将错误的数据集插入到数据库中。这是确保数据一致性的基本内容。通过向应用程序添加验证,您可以添加另一层。在防止错误的数据集插入数据库的同时,您主要创建方法来告诉用户他做错了什么。
这两个你都需要。一般来说,唯一的约束不应该是处理数据库的唯一因素。建议还使用外键约束,如果适用,还使用更复杂的数据验证(自定义约束)。然而,由于您使用的是 MySQL,因此您真正可用的内容并不多
尽你所能,因为最终它会避免很多令人头痛的问题,试图找出为什么会发生特定错误,直到你最终意识到数据库中的数据是错误的。这真的很痛苦。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)