【问题标题】:TYPO3: SQL error: 'Incorrect integer value: '' for column 'sys_language_uid' at row 1'TYPO3:SQL 错误:'不正确的整数值:'' 列 'sys_language_uid' 在第 1 行'
【发布时间】:2017-03-25 08:09:38
【问题描述】:

我新设置了 TYPO3,但是当我尝试添加/保存内容时,它给了我这个错误:

SQL 错误:“不正确的整数值:”列“sys_language_uid” 在第 1 行

【问题讨论】:

    标签: sql typo3 typo3-7.6.x


    【解决方案1】:

    在 Localconfiguration.php 文件中设置

    [SYS][setDBinit] = SET SESSION sql_mode=''
    

    【讨论】:

    • 无论如何,如果您想使用尚未设置默认字段值并因此不支持严格模式的扩展,您可能希望像 /etc/mysql/my.cnf 中那样禁用严格模式:[mysqld]#取消激活严格模式,因为某些类型键盘xtensions不支持它(TCA中的字段需要默认值)#默认值:仅限_full_group_by,strict_trans_tables,no_zero_date,error_for_division_create_user,no_uto_create_user,no_uto_create_user,no_ureo_create_user,no_engine_substitution sql_mode = dop_full_group_by,no_zero_in_date,no_zero_date ,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
    • 从长远来看,禁用严格并不是一个好主意。对于较新的数据库服务器版本,这将是默认设置。因此,当您将系统更新或迁移到不同的数据库服务器时,您可能会遇到问题。因此,虽然在您真正解决问题之前,这可能是一个快速解决方案,但您真的不应该长期这样做。您只是将问题推迟到以后。我建议在此答案中添加注释以澄清这一点。
    • 这不是公共扩展开发人员的解决方案。你可以在你的私人项目中这样做,但你应该修复你的扩展。
    【解决方案2】:

    该行为与使用严格模式的数据库管理系统有关,例如 MySQL 5.7 版。禁用严格模式(如接受的答案中提供的那样)只是一种解决方法。

    真正的解决方案是通过修改相应字段定义的 TCA(表配置数组)将值显式转换为整数。

    【讨论】:

    【解决方案3】:

    在最新的 TYPO3 版本中,您必须在 LocalConfiguration.php 中添加它

    'setDBinit' => 'SET SESSION sql_mode = \'NO_ENGINE_SUBSTITUTION\';',
    

    【讨论】:

      【解决方案4】:

      对我来说,在尝试了不同的方法后,解决方案是:

      mysql -u root -p -e "SET GLOBAL sql_mode = 'NO_ENGINE_SUBSTITUTION';" 
      

      然后,您可以通过运行以下命令来验证是否设置了模式:

       mysql -u root -p -e "SELECT @@GLOBAL.sql_mode;"
      

      你应该看到:

      +---------------+------------------------+
      | Variable_name | Value                  |
      +---------------+------------------------+
      | sql_mode      | NO_ENGINE_SUBSTITUTION |
      +---------------+------------------------+
      

      【讨论】:

        【解决方案5】:

        在 Typo3 9.5 中:

        [DB][Connections][Default][initCommands]='SET SESSION sql_mode = \'\';',
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2014-04-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多