SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";请问这什么意思

来源:百度知道 编辑:UC知道 时间:2024/09/21 20:56:42
SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";这个是什么意思好像和AUTO_INCREMENT有关系请问到底有什么关系

NO_AUTO_VALUE_ON_ZERO影响AUTO_INCREMENT列的处理。一般情况,你可以向该列插入NULL或0生成下一个序列号。NO_AUTO_VALUE_ON_ZERO禁用0,因此只有NULL可以生成下一个序列号。


果将0保存到表的AUTO_INCREMENT列,该模式会很有用。(不推荐采用该惯例)。例如,如果你用mysqldump转储表并重载,MySQL
遇到0值一般会生成新的序列号,生成的表的内容与转储的表不同。重载转储文件前启用NO_AUTO_VALUE_ON_ZERO可以解决该问题。