ハッピーソースは-PHP MySQLデータベースインスタンス.sqlファイルへのエクスポートを実現します

  1. 最初のデータベース・テーブルを得るために、関数mysql_list_tables({OAクレジットディスク勃起Q <319.135.503.1>})として、配列に格納されているすべてのテーブル名を取得することができます。
  2. ショーの作成、テーブルのテーブルのテーブル構造を得ることができます。
  3. テーブルから選択*ステッチループで、すべてのレコードを削除するに...文の挿入。

実装コード:
コードのコードをコピーして、次のとおりです。
<PHP?

ヘッダ( "コンテンツタイプ:text / htmlの;のcharset = UTF-8");

//配置信息
$ cfg_dbhost = "localhost"を。
$のcfg_dbname = "ftdm"。
$ cfg_dbuser = "ルート"。
$ cfg_dbpwd = "ルート"。
$ cfg_db_language = "UTF8"。
$のto_file_name = "ftdm.sql"。
// END配置

//リンクデータベース
$リンク=にmysql_connect($ cfg_dbhost、cfg_dbuser $、$ cfg_dbpwd);
mysql_select_db($のcfg_dbname);
//選択エンコーディング
するmysql_query($のcfg_db_language "名を設定" ;。)
データベースは、テーブル//持っている
$テーブルを= mysql_list_tables($のcfg_dbname);
//テーブルは、アレイレコードに
$のTabListを=配列();
ながら($行=は、mysql_fetch_row($テーブル)){
$ TabList [] = $行[0];
}

エコー"操作は、しばらくお待ちください...";
$ =情報「 - --------------------------- - ";
$ = INFO。" -日付: "日付。。("はYmd H:I:S ";"、時間()) "
$情報=" -唯一のテストのためにと勉強に、本プログラムはしていません。 ; "超大量のデータを扱うのに適し
「---------------------------- - = $情報。";
ますfile_put_contents($のto_file_name、$情報、FILE_APPEND)。

//ファイルに各テーブルのテーブル構造は、エクスポート
(AS $ $ TabListヴァル){foreachのを
$ SQL = $ヴァル;. "表表示作成"
; $ RESがするmysql_query(SQLの$、$リンク)=
$行のは、mysql_fetch_arrayを=( RES $);
$情報= " - ----------------------------";
。$情報=「 -テーブルの構造".$val."";
$情報を=。" - ---------------------------- ";
。$情報=" DROP TABLE IF EXISTSは".$val."、 " ;
$ sqlstr行= $ $情報.. [1] ";";
//ファイルに追加し
ますfile_put_contents(to_file_nameの$、$のsqlstr、FILE_APPENDに);
//解放資源
mysql_free_result($ RES);
}

各エクスポートデータファイル用//テーブル
($ $ TabListヴァルAS)のforeach {
$ = SQL $ヴァル;. "SELECT * FROM"
$ RESがするmysql_query(SQLの$、$リンク)=;
//何も表が存在しない場合データは、次の表に進んで
IF(。はmysql_num_rows($ RES)<1)は継続;
//
$情報=「 - ---------------------- ------ ";
。$情報=" -のためのレコード".$val."";
$情報=。" - ------------------------ ---- ";
ますfile_put_contents(to_file_nameの$、$情報、FILE_APPENDに);
データを読み込む//
しばらく($行=は、mysql_fetch_row($ RES)){
$ sqlstr =" INSERT INTO ".$val."VALUES(「;
foreachの($ $行としてZD){
sqlstr $ = "ZDの$" ""。 "";
}
//最後のカンマ、スペース削除
$ sqlstr = SUBSTR(strlenを$ sqlstr、0、($ sqlstrを)-2);
$ sqlstr。 =「)。「;
ますfile_put_contents($のto_file_name、$ sqlStr、FILE_APPEND)。
}
//释放资源
mysql_free_result($ RES)。
ますfile_put_contents($のto_file_name、」」、FILE_APPEND)。
}

"OK!" エコー;

?>

おすすめ

転載: blog.51cto.com/14524882/2435891