function GetList($bFull = true) { global $DB; if ($bFull) { $rsTables = $DB->Query("show table status"); } else { $rsTables = $DB->Query("show tables from " . CPerfomanceTable::escapeTable($DB->DBName)); } return new CPerfomanceTableList($rsTables); }
case "convert": if ($to != strtoupper($arStatus["Engine"])) { if ($to == "MYISAM") { $res = $DB->Query("alter table " . CPerfomanceTable::escapeTable($table_name) . " ENGINE = MyISAM", false); } elseif ($to == "INNODB") { $res = $DB->Query("alter table " . CPerfomanceTable::escapeTable($table_name) . " ENGINE = InnoDB", false); } else { $res = true; } } if (!$res) { $lAdmin->AddGroupError(GetMessage("PERFMON_TABLES_CONVERT_ERROR"), $table_name); } break; case "optimize": $DB->Query("optimize table " . CPerfomanceTable::escapeTable($table_name) . "", false); break; case "orm": $_GET["orm"] = "y"; $tableParts = explode("_", $table_name); array_shift($tableParts); $moduleNamespace = ucfirst($tableParts[0]); if (count($tableParts) > 1) { array_shift($tableParts); } $className = \Bitrix\Main\Entity\Base::snake2camel(implode("_", $tableParts)); $obTable = new CPerfomanceTable(); $obTable->Init($table_name); $arFields = $obTable->GetTableFields(false, true); $arUniqueIndexes = $obTable->GetUniqueIndexes(); $hasID = false;
} else { $arToUpdate = array(); foreach ($arFields as $Field => $arField) { if (!in_array($Field, $arIndexColumns)) { if (isset($_POST["mark_" . $Field . "_"]) && $_POST["mark_" . $Field . "_"] === "Y") { $arToUpdate[$Field] = serialize(var_import($_POST[$Field])); } elseif (isset($_POST[$Field]) && strlen($_POST[$Field]) > 0) { $arToUpdate[$Field] = $_POST[$Field]; } else { $arToUpdate[$Field] = false; } } } $strUpdate = $DB->PrepareUpdate($table_name, $arToUpdate); if (strlen($strUpdate)) { $res = $DB->Query("\n\t\t\t\tupdate " . CPerfomanceTable::escapeTable($table_name) . "\n\t\t\t\tset " . $strUpdate . "\n\t\t\t\t" . $strWhere . "\n\t\t\t"); } else { $res = true; } } CTimeZone::Enable(); if ($res) { if ($_POST["clear_managed_cache"] === "Y") { $CACHE_MANAGER->CleanAll(); $stackCacheManager->CleanAll(); } if ($_POST["apply"] != "") { $s = ""; if ($bNewRow) { foreach ($arIndexColumns as $Field) { $s = "&" . urlencode("pk[" . $Field . "]") . "=" . urlencode($res);