【问题标题】:Drupal add field varchar issuesDrupal 添加字段 varchar 问题
【发布时间】:2020-12-16 15:38:36
【问题描述】:

我正在使用以下代码通过添加额外的列来修改数据库表:

$componentName = 'is_this_the_first_time_you_have_taken_part_in_or_attended_this_event';
    db_add_field('webform_views_data',
        $componentName,
            array('type' => 'varchar', 'length' => 255, 'not null' => TRUE)
    );

但是,我不断收到以下错误:

> PDOException: SQLSTATE[42000]: Syntax error or access violation: 1059
> Identifier name
> 'is_this_the_first_time_you_have_taken_part_in_or_attended_this_event'
> is too long: ALTER TABLE {webform_views_data} ADD
> `is_this_the_first_time_you_have_taken_part_in_or_attended_this_event`
> VARCHAR(255) NULL DEFAULT NULL; Array ( ) in db_add_field() (line 2812
> of /var/www/mysite/includes/database/database.inc).

关于错误消息中明显的长度细节,我想我们都可以同意 'is_this_the_first_time_you_have_taken_part_in_or_attended_this_event' 不是 255 个字符长。

不确定是什么问题。

【问题讨论】:

    标签: drupal drupal-7


    【解决方案1】:

    VARCHAR(255) 或 255 个字符是字段内容的最大字符,但错误指出字段的名称太长。

    也就是说,is_this_the_first_time_you_have_taken_part_in_or_attended_this_event 对于字段名称来说太长了。

    请参阅this answer 了解相关问题,并注意根据MySQL documentation,字段名称的字符数限制为 64 个字符。

    【讨论】:

      猜你喜欢
      • 2023-03-20
      • 1970-01-01
      • 1970-01-01
      • 2023-03-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-10-03
      • 2021-08-03
      相关资源
      最近更新 更多