Possible en double:
Moving a row from one table to another (Insert value list does not match column list)MySQL Insérer :: MAX (FIELD) +1 - si nul
Pour un de mes inserts je donne les résultats suivants: (AOP/MySQL)
$this->sql = "INSERT INTO tblfixedfares NULL, SELECT NULL, IFNULL(MAX(FixedFareId), 0) + 1, '$fieldFrompc', '$fieldTopc', '$fieldDay', '1', 'Car') FROM tblfixedfares;
INSERT INTO tblfixedfares NULL, SELECT NULL, IFNULL(MAX(FixedFareId), 0) + 1, '$fieldFrompc', '$fieldTopc', '$fieldNight', '2', 'Car') FROM tblfixedfares;";
Fondamentalement, cela ne fonctionne pas comme il n'introduisait une valeur pour FixedFareId
.
Ce que je veux faire est de régler la FixedFareId 1 supérieure à la valeur identifiant de tarif fixe le plus élevé, et si elle est nulle pour régler la FixedFareId à 1.
Je ne sais pas quel est le problème exactement le code mais je peux le voir est pas ramasser quoi que ce soit pour le FixedFareId que je me suit réponse:
Error: SQLSTATE[21S01]: Insert value list does not match column list: 1136 Column count doesn't match value count at row 1SQL
INSERT INTO tblfixedfares VALUES (NULL, 'le675', 'le115', '11', '1', 'Car');
INSERT INTO tblfixedfares VALUES (NULL, 'le675', 'le115', '22', '2', 'Car');
Fondamentalement deux inserts se produisent dans une seule requête, s'il n'y a rien dans la base de données FixedFareId doit être 1:
Donc le premier insert nee ds être:
INSERT INTO tblfixedfares VALUES (NULL, **1**, 'le675', 'le115', '11', '1', 'Car');
INSERT INTO tblfixedfares VALUES (NULL, **1**, 'le675', 'le115', '22', '2', 'Car');
le prochain insert serait:
INSERT INTO tblfixedfares VALUES (NULL, **2**, 'le675', 'le115', '11', '1', 'Car');
INSERT INTO tblfixedfares VALUES (NULL, **2**, 'le675', 'le115', '22', '2', 'Car');
La base de données est la suivante:
id, FixedFareId, ShortPostcodeA, ShortPostcodeB, Fare, DayHalf, VehicleSystemId
id est auto-incrémenté, le fixedfareid doit être 1 si null, et +1 de la valeur max de fixedfareid sinon null.
pouvez-vous poster le résultat de cette requête, 'DESC tblfixedfares'? –