<div class="codetitle"><a style="CURSOR: pointer" data="36936" class="copybut" id="copybut36936" onclick="doCopy('code36936')"> 代码如下:<div class="codebody" id="code36936"> <!?php /** 备份数据库结构 **/ / 函数名称:table2sql() 函数功能:把表的结构转换成为SQL 函数参数:$table: 要进行提取的表名 返 回 值:返回提取后的结果,SQL集合 函数作者:heiyeluren / function table2sql($table) { global $db; $tabledump = "DROP TABLE IF EXISTS $table;n"; $createtable = $db--->query("SHOW CREATE TABLE $table"); $create = $db->fetch_row($createtable); $tabledump .= $create[1].";nn"; return $tabledump; } /** 备份数据库结构和所有数据 **/ / 函数名称:data2sql() 函数功能:把表的结构和数据转换成为SQL 函数参数:$table: 要进行提取的表名 返 回 值:返回提取后的结果,SQL集合 函数作者:heiyeluren / function data2sql($table) { global $db; $tabledump = "DROP TABLE IF EXISTS $table;n"; $createtable = $db->query("SHOW CREATE TABLE $table"); $create = $db->fetch_row($createtable); $tabledump .= $create[1].";nn"; $rows = $db->query("SELECT FROM $table"); $numfields = $db->num_fields($rows); $numrows = $db->num_rows($rows); while ($row = $db->fetch_row($rows)) { $comma = ""; $tabledump .= "INSERT INTO $table VALUES("; for($i = 0; $i < $numfields; $i++) { $tabledump .= $comma."'".mysql_escape_string($row[$i])."'"; $comma = ","; } $tabledump .= ");n"; } $tabledump .= "n"; return $tabledump; } ?> <!--?php $host="localhost"; //主机名 $user="root"; //MYSQL用户名 $password="root"; //密码 $dbname="dedecmsv4"; //备份的数据库 mysql_connect($host,$user,$password); mysql_select_db($dbname); $q1=mysql_query("show tables"); while($t=mysql_fetch_array($q1)){ $table=$t[0]; $q2=mysql_query("show create table $table "); $sql=mysql_fetch_array($q2); $mysql.=$sql['Create Table'].";rnrn";#DDL $q3=mysql_query("select from $table "); while($data=mysql_fetch_assoc($q3)) { $keys=array_keys($data); $keys=array_map('addslashes',$keys); $keys=join(', ',$keys); $keys="".$keys." "; $vals=array_values($data); $vals=arraymap('addslashes',$vals); $vals=join("','",$vals); $vals="'".$vals."'"; $mysql.="insert into $table ($keys) values($vals);rn"; } $mysql.="rn"; } $filename=date('Ymd')."".$dbname.".sql"; //文件名为当天的日期 $fp = fopen($filename,'w'); fputs($fp,$mysql); fclose($fp); echo "数据备份成功,生成备份文件".$filename; ?>
(编辑:李大同)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|