Php 失败的SQL case语句是否可以更改某些行,但不能更改其他行?
我计划使用PHP执行一条SQL case语句,一次编辑MySQL表中的多行。如果查询失败,是否可能某些值已更改而其他值未更改 本例显示了所涉及的案例陈述类型:Php 失败的SQL case语句是否可以更改某些行,但不能更改其他行?,php,sql,Php,Sql,我计划使用PHP执行一条SQL case语句,一次编辑MySQL表中的多行。如果查询失败,是否可能某些值已更改而其他值未更改 本例显示了所涉及的案例陈述类型: UPDATE person SET name = CASE id WHEN 1 THEN 'Jim' WHEN 2 THEN 'Mike' WHEN 3 THEN 'Precious' END, sex = CASE id WHEN 1 THEN 'f
UPDATE person
SET name = CASE id
WHEN 1 THEN 'Jim'
WHEN 2 THEN 'Mike'
WHEN 3 THEN 'Precious'
END,
sex = CASE id
WHEN 1 THEN 'female'
WHEN 2 THEN 'male'
WHEN 3 THEN 'male'
END
WHERE id IN (1,2,3)
交易是你要找的词。事务是全有或全无操作。这意味着要么一切都通过了,事务就完成了,要么某件事失败了,整个事务就回滚了。这样可以防止数据中的不一致
如上所述,表引擎需要支持事务。InnoDB在MySQL中实现了这一点,而MyISAM则没有。使用事务。将您的代码添加到问题中。如果人们知道你想问什么,你会得到更好的答案。。!照达维兰多姆的建议去做。请注意,表的引擎类型必须是支持InnoDB之类事务的引擎类型。确切地说,“SQL案例语句”是什么?在问题中添加了一个示例。