Mysql
 sql >> Base de données >  >> RDS >> Mysql

utiliser mysqli pour empêcher l'injection sql, comment définir NULL ou CURRENT_DATE ?

Si vous souhaitez un paramètre par défaut, vous pouvez soit spécifier une valeur par défaut dans le schéma de la base de données.
Pour current_date, vous devez définir le type de données sur timestamp pas date , de cette façon MySQL insérera automatiquement now() dans le champ en cas de données manquantes.

Ou créez un déclencheur

DELIMITER $$

CREATE TRIGGER BEFORE INSERT ON FOR EACH ROW
BEGIN
  IF new.mydate IS NULL THEN SET new.mydate = NOW();
END $$

DELIMITER ;

Si vous voulez passer null définissez simplement la variable sur null :

$var = null;

Liens
http://dev.mysql.com /doc/refman/5.1/en/alter-table.html
http://dev.mysql.com /doc/refman/5.1/en/create-trigger.html