@@ -263,7 +263,7 @@ class Installer
263
263
/***
264
264
* Old Charset for cl tables
265
265
*/
266
- private const OLDCHARSET = 'utf8mb3 ' ;
266
+ private const OLDCHARSET = 'utf8| utf8mb3 ' ;
267
267
268
268
/***
269
269
* @var DtoFactoriesTable
@@ -662,7 +662,7 @@ private function setupModuleRegistry(SchemaSetupInterface $setup)
662
662
} else {
663
663
// change the charset to utf8mb4
664
664
$ getTableSchema = $ connection ->getCreateTable ($ setup ->getTable ('setup_module ' )) ?? '' ;
665
- if (str_contains ( $ getTableSchema , self ::OLDCHARSET )) {
665
+ if (preg_match ( ' /\b( ' . self ::OLDCHARSET . ' )\b/ ' , $ getTableSchema )) {
666
666
$ tableName = $ setup ->getTable ('setup_module ' );
667
667
$ columns = ['module ' => ['varchar(50) ' ,'' ],
668
668
'schema_version ' => ['varchar(50) ' ,'' ],
@@ -731,7 +731,7 @@ private function setupSessionTable(
731
731
} else {
732
732
// change the charset to utf8mb4
733
733
$ getTableSchema = $ connection ->getCreateTable ($ setup ->getTable ('session ' )) ?? '' ;
734
- if (str_contains ( $ getTableSchema , self ::OLDCHARSET )) {
734
+ if (preg_match ( ' /\b( ' . self ::OLDCHARSET . ' )\b/ ' , $ getTableSchema )) {
735
735
$ tableName = $ setup ->getTable ('session ' );
736
736
$ columns = ['session_id ' => ['varchar(255) ' ,'' ]];
737
737
$ this ->updateDBTable ($ tableName , $ columns , $ connection );
@@ -794,7 +794,7 @@ private function setupCacheTable(
794
794
} else {
795
795
// change the charset to utf8mb4
796
796
$ getTableSchema = $ connection ->getCreateTable ($ setup ->getTable ('cache ' )) ?? '' ;
797
- if (str_contains ( $ getTableSchema , self ::OLDCHARSET )) {
797
+ if (preg_match ( ' /\b( ' . self ::OLDCHARSET . ' )\b/ ' , $ getTableSchema )) {
798
798
$ tableName = $ setup ->getTable ('cache ' );
799
799
$ columns = ['id ' => ['varchar(200) ' ,'' ]];
800
800
$ this ->updateDBTable ($ tableName , $ columns , $ connection );
@@ -839,7 +839,7 @@ private function setupCacheTagTable(
839
839
} else {
840
840
// change the charset to utf8mb4
841
841
$ getTableSchema = $ connection ->getCreateTable ($ setup ->getTable ('cache_tag ' )) ?? '' ;
842
- if (str_contains ( $ getTableSchema , self ::OLDCHARSET )) {
842
+ if (preg_match ( ' /\b( ' . self ::OLDCHARSET . ' )\b/ ' , $ getTableSchema )) {
843
843
$ tableName = $ setup ->getTable ('cache_tag ' );
844
844
$ columns = ['tag ' => ['varchar(100) ' ,'' ],'cache_id ' => ['varchar(200) ' ,'' ]];
845
845
$ this ->updateDBTable ($ tableName , $ columns , $ connection );
@@ -904,7 +904,7 @@ private function setupFlagTable(
904
904
$ this ->updateColumnType ($ connection , $ tableName , 'flag_data ' , 'mediumtext ' );
905
905
// change the charset to utf8mb4
906
906
$ getTableSchema = $ connection ->getCreateTable ($ tableName ) ?? '' ;
907
- if (str_contains ( $ getTableSchema , self ::OLDCHARSET )) {
907
+ if (preg_match ( ' /\b( ' . self ::OLDCHARSET . ' )\b/ ' , $ getTableSchema )) {
908
908
$ columns = ['flag_code ' => ['varchar(255) ' ,'NOT NULL ' ],'flag_data ' => ['mediumtext ' ,'' ]];
909
909
$ this ->updateDBTable ($ tableName , $ columns , $ connection );
910
910
}
0 commit comments