我正在尝试以下查询,它只是没有将任何值存储到表中。
列 Tienda 设置为唯一。 pk为Codigo,查询为:
$asignaciones = $db->query("
INSERT INTO `Asignaciones` (
`Codigo` , `Tienda` , `Apertura` , `Cierre_20_00` , `Cierre_20_30` , `Cierre_21_00` , `Sanitarios` , `Barrer_Mat` , `Barrer_Vesp` , `Trapear_Mat` , `Trapear_Vesp` , `Limpiar_Ventanales_y_Vitrinas` , `Fecha` , `Encargada` , `Supervisora` )
VALUES (NULL , '$Tienda', '$Apertura', '$Cierre_20_00', '$Cierre_20_30', '$Cierre_21_00', '$Sanitarios', '$Barrer_Mat', '$Barrer_Vesp', '$Trapear_Mat', '$Trapear_Vesp', '$Limpiar_Ventanales_y_Vitrinas', '$Fecha', '$Encargada', '$Supervisora'
WHERE Tienda = '$MiTienda')
ON DUPLICATE KEY UPDATE `Apertura`= '$Apertura', `Cierre_20_00` = '$Cierre_20_00', `Cierre_20_30` ='$Cierre_20_30', `Cierre_21_00`= '$Cierre_21_00', `Sanitarios` ='$Sanitarios', `Barrer_Mat`= '$Barrer_Mat', `Barrer_Vesp`='$Barrer_Vesp' , `Trapear_Mat`='$Trapear_Mat' , `Trapear_Vesp` ='$Trapear_Vesp', `Limpiar_Ventanales_y_Vitrinas`='$Limpiar_Ventanales_y_Vitrinas' , `Fecha`= '$Fecha', `Encargada`='$Encargada' , `Supervisora`= '$Supervisora'");
当前行值为:
Codigo|Tienda|Apertura|Cierre_20_00|Cierre_20_30|Cierre_21_00|Sanitarios|Barrer_Mat|Barrer_Vesp|Trapear_Mat|Trapear_Vesp|Limpiar_Ventanales_y_Vitrinas|Fecha |Encargada|Supervisora
2 |1010 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0000-00-00 | 0 | 0
我的查询有什么问题? $MiTienda = 1010 。我通过将所有其他值添加到 4 并将日期与今天的日期进行测试,但它没有更新。我想知道是否应该删除代码栏并进行Tienda PK?
最佳答案
所以事实证明我的变量没有从上一页的表单中推送过来。这就是为什么它什么也没存储。我用了 print_r($_SESSION);在带有上述查询的页面中进行查找。
关于php - 在重复 key 更新时使用 INSERT INTO VALUES,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40079866/