Drupal 8 Webform 如何修改下一个提交ID(Sid)的数值
Drupal 8.8.x 修改Webform下一个提交ID的操作方法
Webform的提交ID(sid)是webform_submission数据表的自增主键,核心逻辑由数据库层控制,Drupal 8.8.x版本的Webform插件没有额外的自定义ID生成逻辑,直接调整数据表的自增起始值即可实现需求,操作步骤如下:
前置操作
操作前务必完整备份网站数据库,避免操作失误导致数据损坏或丢失
操作步骤
- 先确认当前已有的最大提交ID小于你要设置的200000,避免主键冲突,执行如下SQL查询:
SELECT MAX(sid) FROM webform_submission;
如果返回的最大值大于等于200000,需要先调高目标ID值,或者清理不需要的历史提交记录。
2. 根据你使用的数据库类型,执行对应修改自增ID的命令:
- MySQL/MariaDB环境:
ALTER TABLE webform_submission AUTO_INCREMENT = 200000;
- PostgreSQL环境:
ALTER SEQUENCE webform_submission_sid_seq RESTART WITH 200000;
验证与注意事项
如果你开启了Webform草稿提交功能,修改前需要确认草稿记录的sid未超过200000,否则会出现提交时报主键重复的错误。
修改完成后可以提交一条测试记录,核对生成的sid是否为200000,确认功能正常后删除测试提交即可。
内容的提问来源于stack exchange,提问作者t.c
相关产品推荐
相关产品推荐

