如何从同一个表名(结构)中的生产数据库中的测试数据库和DUMP的任何表中获取所有数据?在Mysql中使用PHP代码?
请帮帮我..
修改
我需要PHP使用MySQL查询为我做这个
答案 0 :(得分:1)
抱歉,有点杂乱,但这些是我用来构建用于表重建和重新填充的SQL代码的函数。这都在一个'表'对象中,但我相信你可以拼凑出正在发生的事情。
SQL“SHOW CREATE TABLE yourtablename”为您提供了再次创建表所需的一切。所有其余的只是循环遍历所有条目并发出INSERT语句。
public function backup() {
$output = "/* - - - Table recovery for $this->tablename - - - */\n\n\n";
$output .= "DROP TABLE IF EXISTS `$this->tablename`;\n\n";
$output .= $this->showcreate().';';
$output .= $this->showrepopulate();
return $output."\n\n\n";
}
final protected function showcreate() {
$result = $this->query("SHOW CREATE TABLE $this->tablename");
return $result[0]['Create Table'];
}
final protected function showrepopulate() {
$result = $this->query("SELECT * FROM $this->tablename");
$output = '';
$count = count($result);
if ($count) {
$output = "\n\nINSERT INTO `$this->tablename` VALUES\n";
for ($i=0; $i<$count; $i++) {
$output .= "(";
$numfields = count($result[$i]);
for ($j=0; $j<$numfields; $j++) {
if ($j>0) $output .= ',';
$output .= $this->Database->escape(array_shift($result[$i]));
}
$output .= ")";
$output .= ($i != $count-1) ? ",\n" : ';';
}
}
return $output;
}
答案 1 :(得分:0)
如果您的意思是通过转储创建SQL代码来重新创建表,我建议使用现有工具来管理MySQL,例如phpMyAdmin或Adminer。