mirror of
https://github.com/NNTmux/newznab-tmux.git
synced 2026-08-30 02:01:28 +00:00
24fa162413
[ci skip] [skip ci]
64 lines
2.8 KiB
PHP
64 lines
2.8 KiB
PHP
<?php
|
|
|
|
require_once dirname(__DIR__, 3).DIRECTORY_SEPARATOR.'bootstrap.php';
|
|
|
|
passthru('clear');
|
|
|
|
$pdo = new nntmux\db\DB();
|
|
|
|
if (! isset($argv[1]) || (isset($argv[1]) && $argv[1] !== 'true')) {
|
|
exit($pdo->log->error("\nThis script renames all table columns to lowercase, it can be dangerous. Please BACKUP your database before running this script.\n"
|
|
."php rename_to_lower.php true ...: To rename all table columns to lowercase.\n"));
|
|
}
|
|
|
|
echo $pdo->log->warning('This script renames all table colums to lowercase.');
|
|
echo $pdo->log->header("Have you backed up your database? Type 'BACKEDUP' to continue: \n");
|
|
echo $pdo->log->warningOver("\n");
|
|
$line = fgets(STDIN);
|
|
if (trim($line) != 'BACKEDUP') {
|
|
exit($pdo->log->error('This script is dangerous you must type BACKEDUP for it function.'));
|
|
}
|
|
|
|
echo "\n";
|
|
echo $pdo->log->header("Thank you, continuing...\n\n");
|
|
|
|
if ($argc == 1 || $argv[1] != 'true') {
|
|
exit($pdo->log->error("\nThis script will rename every table column to lowercase that is not already lowercase.\nTo run:\nphp $argv[0] true\n"));
|
|
}
|
|
|
|
$database = env('DB_NAME');
|
|
|
|
$count = 0;
|
|
$list = $pdo->query("SELECT TABLE_NAME, COLUMN_NAME, UPPER(COLUMN_TYPE), EXTRA FROM information_schema.columns WHERE table_schema = '".$database."'");
|
|
if (count($list) == 0) {
|
|
echo $pdo->log->info('No table columns to rename');
|
|
} else {
|
|
foreach ($list as $column) {
|
|
if ($column['column_name'] !== strtolower($column['column_name'])) {
|
|
echo $pdo->log->header('Renaming Table '.$column['table_name'].' Column '.$column['column_name']);
|
|
if (isset($column['extra'])) {
|
|
$extra = strtoupper($column['extra']);
|
|
} else {
|
|
$extra = '';
|
|
}
|
|
$pdo->queryDirect('ALTER TABLE '.$column['table_name'].' CHANGE '.$column['column_name'].' '.strtolower($column['column_name']).' '.$column['upper(column_type)'].' '.$extra);
|
|
$count++;
|
|
}
|
|
if (strtolower($column['column_name']) === 'id' && strtolower($column['extra']) !== 'auto_increment') {
|
|
echo $pdo->log->header('Renaming Table '.$column['table_name'].' Column '.$column['column_name']);
|
|
$extra = 'AUTO_INCREMENT';
|
|
if ($column['table_name'] != 'releases_se') {
|
|
$placeholder = $pdo->queryDirect('SELECT MAX(id) FROM '.$column['table_name']);
|
|
$pdo->queryDirect('ALTER IGNORE TABLE '.$column['table_name'].' CHANGE '.$column['column_name'].' '.strtolower($column['column_name']).' '.$column['upper(column_type)'].' '.$extra);
|
|
$pdo->queryDirect('ALTER IGNORE TABLE '.$column['table_name'].' AUTO_INCREMENT = '.$placeholder + 1);
|
|
$count++;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
if ($count == 0) {
|
|
echo $pdo->log->info('All table column names are already lowercase');
|
|
} else {
|
|
echo $pdo->log->header($count.' colums renamed');
|
|
}
|