This commit is contained in:
aozhiwei 2024-08-05 16:24:12 +08:00
parent a80c0eb249
commit f572b486f3

View File

@ -873,4 +873,52 @@ EOD;
);
}
public function dumpSqlMigrate()
{
$conn = $this->_getMysql('');
$heroSql = $this->dumpMigrateTable($conn, 't_hero', 'gamedb2006_tmp_1.t_hero_bk', 'WHERE activate=1');
$mailSql = $this->dumpMigrateTable($conn, 't_mail', 'gamedb2006_tmp_1.t_mail_bk', '');
$goldBullionSql = $this->dumpMigrateTable($conn, 't_gold_bullion', 'gamedb2006_tmp_1.t_gold_bullion_bk', '');
echo $heroSql;
echo '<br>';
echo '<br>';
echo $mailSql;
echo '<br>';
echo '<br>';
echo $goldBullionSql;
}
private function dumpMigrateTable($conn, $trgTblName, $srcTblName, $whereSql)
{
$Fields = $conn->execQuery("show columns from ${trgTblName}");
$inited = false;
$sql = "INSERT INTO ${trgTblName} (";
foreach ($Fields as $field) {
if ($field['Field'] == 'idx') {
continue;
}
if (!$inited) {
$inited = true;
$sql .= $field['Field'];
} else {
$sql .= ',' . $field['Field'];
}
}
$sql .= ') SELECT ';
$inited = false;
foreach ($Fields as $field) {
if ($field['Field'] == 'idx') {
continue;
}
if (!$inited) {
$inited = true;
$sql .= $field['Field'];
} else {
$sql .= ',' . $field['Field'];
}
}
$sql .= " FROM ${srcTblName} " . $whereSql . ";";
return $sql;
}
}