MySQL两表联表更新受限,如何避免安全更新模式限制?

MySQL两表联表更新受限,如何避免安全更新模式限制?

mysql两表联表更新受限

问题中提到的sql语句无法执行,是因为mysql运行在安全更新模式(safe-updates)下。在这种模式下,对于非主键条件执行更新或删除操作是不允许的。

因此,解决此问题的关键是确保在where条件中包含主键。在此例中,可以将主键限定为a表,如下所示:

UPDATE cmf_course_lesson a, cmf_course_chapter b SET a.chapterid = b.id WHERE a.courseid = b.courseid and a.id > 0;
登录后复制

通过添加a.id > 0条件,我们可以确保只更新有主键的a表记录。这将有效地更新两表之间的字段,同时遵循安全更新模式的限制。

© 版权声明
THE END
喜欢就支持一下吧
点赞14 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容