From cf9bd125d727646c51a03992d15a18a4f2448d89 Mon Sep 17 00:00:00 2001 From: popcorner <351633+popcorner@user.noreply.gitee.com> Date: Thu, 11 Mar 2021 04:19:21 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=20=E5=90=8E=E5=8F=B0?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E5=BA=93=E6=A0=A1=E9=AA=8C=E5=B7=A5=E5=85=B7?= =?UTF-8?q?=E4=B8=8D=E6=94=AF=E6=8C=81MySQL=208=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- upload/source/admincp/admincp_db.php | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/upload/source/admincp/admincp_db.php b/upload/source/admincp/admincp_db.php index eb36c8f74..148b4bab9 100644 --- a/upload/source/admincp/admincp_db.php +++ b/upload/source/admincp/admincp_db.php @@ -921,7 +921,15 @@ if($operation == 'export') { } elseif(!isset($discuzdbnew[$dbtable][$key])) { $dellist[] = $value; } elseif($tempvalue != $discuzdbnew[$dbtable][$key]) { - $modifylist[] = $value; + // MySQL 8.0.17 开始不再支持除tinyint(1)以外的任何int类数据类型的显示宽度,检测到此行为则移除数值。 + if((strpos($tempvalue['Type'], 'int(') !== false) && (strpos($discuzdbnew[$dbtable][$key]['Type'], '(') === false)) { + $tempvalue['Type'] = preg_replace('/\(\d+\)/', '', $tempvalue['Type']); + if($tempvalue != $discuzdbnew[$dbtable][$key]) { + $modifylist[] = $value; + } + } else { + $modifylist[] = $value; + } } } if(is_array($discuzdbnew[$dbtable])) { -- Gitee