ホームページ >バックエンド開発 >PHPチュートリアル >SQL ファイル PHP バックアップ データベースは SQL ファイルを生成し、関数コードをダウンロードします
コードをコピー コードは次のとおりです:
/****** データベース構造のバックアップ ******/
/*
関数名: table2sql()
関数: テーブル構造をSQLに変換します
関数パラメータ: $table: 抽出するテーブルの名前
戻り値: 抽出された結果を返す、SQL コレクション
関数作成者: heiyeluren
*/
function table2sql($table)
{
global $db; = " $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; = "$table;n が存在する場合はテーブルを削除";
$createtable = $db->query("SHOW CREATE TABLE $table");
$create = $db->fetch_row($createtable); .= $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 .= "$ table VALUES に挿入します。 (";
for($i = 0; $i {
$tabledump .= $comma."'".mysql_escape_string($row[$i])."'" ;
$comma = ",";
$tabledump .= ");n";
$tabledump を返す
?>
$host="localhost"; //ホスト名
$user="root" //MYSQL ユーザー名
$dbname="dedecmsv4"; //バックアップ データベース
mysql_connect( $host,$user,$password);
$q1=mysql_query("show tables");
while($t=mysql_fetch_array($q1)){
$table= $t[0 ];
$q2=mysql_query("show create table `$table`");
$sql=$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);
$vals=array_values($data); array_map('addslashes',$vals);
$vals=join("','",$vals);
$mysql.= "に挿入$table`($keys) 値($vals);rn";
}
$mysql.="rn";
}
$filename=date('Ymd')."_".$dbname .".sql "; //ファイル名は今日の日付です
$fp = fopen($filename,'w');
fputs($fp,$mysql);
fclose($fp);
echo "データのバックアップに成功しました、ファイルをバックアップしました".$filename;
?>
が生成されます
上記では、PHP バックアップ データベースを使用して SQL ファイルを生成し、SQL ファイルをダウンロードするための関数コードを SQL ファイルの内容も含めて紹介しました。PHP チュートリアルに興味のある友人に役立つことを願っています。