长话短说,我有一个要导入为skel
样式文件的SQL文件,因此将以编程方式重复进行此操作。我可以根据需要编辑SQL文件,但我不想触摸应用程序本身。
此应用程序userid = 0
用来代表匿名用户。它在数据库中还具有一个相关的(空白)条目来表示此“用户”。因此,我这行skel.sql
看起来像这样:
INSERT INTO `{{TABLE_PREFIX}}users` VALUES (0, '', '', '', 0, 0, 0, '', '', 0, 0, 0, 0, 0, NULL, '', '', '', NULL);
问题在于这uid
是一个auto_increment
字段,从技术上讲,该字段0
是无效值。或者至少,如果将其设置为0,则基本上是在告诉MySQL,“请在该字段中插入下一个ID”。
现在,我想我可以在SQL文件中添加INSERT
一个UPDATE
查询,但是有没有一种方法可以告诉MySQL,是的,我实际上是想插入0
该字段吗?
sql_mode
是用逗号分隔的标志列表。如果这样做sql_mode='NO_AUTO_VALUE_ON_ZERO'
,您可能会无意中禁用其他标志