cakephp-Mysql中的空白记录问题
在我的应用程序中,尽管客户端和服务器端都进行了严格的验证,但不知何故,用户注册页面的记录变为空白。所有数据均为空接受我表格中的默认值(例如性别-男性)。大约每100个注册中就有1个发生这种情况 Mysql-对于每个必填字段,我都有类似NOTNULL的结构。它仍然是空白的 Cakephp端-在保存之前,我正在检查数据数组是否为空 如果有人能帮助我,我将不胜感激cakephp-Mysql中的空白记录问题,php,mysql,cakephp,Php,Mysql,Cakephp,在我的应用程序中,尽管客户端和服务器端都进行了严格的验证,但不知何故,用户注册页面的记录变为空白。所有数据均为空接受我表格中的默认值(例如性别-男性)。大约每100个注册中就有1个发生这种情况 Mysql-对于每个必填字段,我都有类似NOTNULL的结构。它仍然是空白的 Cakephp端-在保存之前,我正在检查数据数组是否为空 如果有人能帮助我,我将不胜感激 提前感谢。它是空的,因为在每个数据库(Oracle除外)中,空字符串'都不是空的。因此,数据库将接受这一点 如果要防止这种情况发生,需要编
提前感谢。它是空的,因为在每个数据库(Oracle除外)中,空字符串
'
都不是空的。因此,数据库将接受这一点
如果要防止这种情况发生,需要编写如下触发器:
DELIMITER $$
CREATE TRIGGER bi_table1_each BEFORE INSERT ON table1 FOR EACH ROW
BEGIN
//this will cause an error and prevent the insertion of an empty gender field.
//If gender has a default value, the database will insert the default value instead.
IF new.gender = '' THEN SET new.gender = null;
END $$
DELIMITER ;
或者,您可以将性别设置为枚举字段
ALTER table1
CHANGE COLUMN gender gender ENUM ('M','F');
链接:您可以发布您的验证规则吗?