我一直在拉头发。我收到此错误:
发生异常:/homepages/22/d734597661/htdocs/clickandbuilds/concrete/MyCMS/updates/concrete5-8.4.2/concrete/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/AbstractMySQLDriver.php:112执行'插入页面(cID,siteTreeID,ptID,cParentID,uID,cInheritPermissionsFrom,cOverrideTemplatePermissions,cInheritPermissionsFromCID,cDisplayOrder,pkgID,cIsActive,cIsDraft)值(?,?,?,?,?,?,?,?,? ?,?,?,?,?,?)'和参数[“ 461”,null,“ 12”,null,“ 1”,“ TEMPLATE”,null,210,0,0,0,1]:
SQLSTATE [23000]:违反完整性约束:1048列'cOverrideTemplatePermissions'不能为空(0)
代码如下:
case '2005':
return new Exception\ConnectionException($message, $exception);
case '1048':
case '1121':
case '1138':
case '1171':
case '1252':
case '1263':
case '1566':
return new Exception\NotNullConstraintViolationException($message, $exception);
}
return new Exception\DriverException($message, $exception);
}
/**
* {@inheritdoc}
*/
public function createDatabasePlatformForVersion($version)
{
if ( ! preg_match('/^(?P<major>\d+)(?:\.(?P<minor>\d+)(?:\.(?P<patch>\d+))?)?/', $version, $versionParts)) {
这破坏了我的网站。如果有人以前见过此事并可以告诉我该怎么办,我将不胜感激。我迷路了。我了解这是mysql错误。错误是从此行生成的:
return new Exception\NotNullConstraintViolationException($message, $exception);
答案 0 :(得分:0)
这是Concrete5中的核心问题,不需要手动修复。
您最好的解决方案是与Concrete5开发人员在其Slack channel或opening a bug report on their github repo上进行讨论。
如果您能够自己在引用的文件中修复此问题,则下次更新Concrete5时,它将再次中断。
Concrete5确实允许覆盖大多数文件,但是对于像这样的问题,它们是核心功能,通常最好是依靠Concrete5团队来解决此问题并推出更新。
话虽如此,可能有可能对更多的问题进行故障排除,但是当发生此错误时,您必须分享正在做的事情:
最后,我在Concrete5中经常要做的第一件事就是清除cache
。如果这样不起作用,则可以始终尝试重新创建导致该问题的页面,因为在升级到新版本后,Concrete5中的某些较旧的错误可能会由于数据库一致性问题而持续存在。