Bonjour,
J'ai mis par défaut la valeur NULL sur plusieurs champs, mais lors que je fais un INSERT sans renseigner ces champs, la valeur par défaut ne s'applique pas alors que les valeurs type integer par défaut s'appliquent.
Comme exemple, la valeur par défaut ne s'applique pas lors d'un INSERT pour les champs Nom2 et NomAnglais.
Quelqu'un a une idée ?
Voici la structure :
L'INSERT se fait de la façon suivante : (c'est un INSERT factorisé à l'ensemble de mes tables)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 CREATE TABLE IF NOT EXISTS `langues_famille` ( `Id` int(11) NOT NULL COMMENT 'Identifiant de la famille de langues', `Nom` varchar(50) DEFAULT NULL COMMENT 'Nom de la famille de langues', `Nom2` varchar(500) DEFAULT NULL COMMENT 'Liste des Nom2', `NomAnglais` varchar(50) DEFAULT NULL COMMENT 'Liste des noms anglais de la famille de langue', `Type_Id` int(11) NOT NULL DEFAULT '2' COMMENT 'Identifiant du type d''élément', `Dossier` varchar(50) CHARACTER SET latin1 COLLATE latin1_general_ci DEFAULT NULL COMMENT 'Répertoire d''enregistrement des ressources pour cet enregistrement', `Date_Modification` datetime DEFAULT NULL COMMENT 'Date de modification de l''enregistrement', `Autre` tinyint(1) NOT NULL DEFAULT '0' COMMENT 'Enregistrement différent', `Date_Creation` datetime DEFAULT NULL COMMENT 'Date de création de l''enregistrement' ) ENGINE=InnoDB AUTO_INCREMENT=92 DEFAULT CHARSET=utf8;
Merci d'avance
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 function Element_Ajouter($Table_Nom) /* But : Ajouter un Element Paramètres : $Table_Nom (Nom de la table de l'élément) Résultat : l'Id de l'élément créé */ { $Phrase_SQL = "INSERT INTO ".$Table_Nom." (`Date_Modification`, `Date_Creation`) VALUES ('".date('Y-m-d H:i:s')."', '".date('Y-m-d H:i:s')."');"; $result = mysql_query($Phrase_SQL) or die (mysql_error()); $result = mysql_query("SELECT LAST_INSERT_ID();"); $last_id = mysql_fetch_array($result); SQL_Enregistre($Phrase_SQL); return $last_id[0]; }
Partager