ホームページ  >  記事  >  バックエンド開発  >  PHP mysql データのインポートとエクスポート、データ テーブル構造のインポートとエクスポート_PHP チュートリアル

PHP mysql データのインポートとエクスポート、データ テーブル構造のインポートとエクスポート_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-20 11:06:56923ブラウズ

データのインポートとエクスポートとデータテーブル構造のインポートとエクスポートを実現****************************** **** **********************/

IDBManagement名; ,,,, {$this->DatabaseName =$dbName;}
- の「」」 - ‐ ‐ ‐ ‐a else {$this->DefaultPath=$ _DefaultPath;}
db=新しい DBFactory ( ); *******************************メソッド名: GetTablesName**関数の説明: すべてのデータテーブルを取得$this->データベース名
**入力パラメータ: なし
**出力パラメータ: なし
**戻り値: -array <$this->TablesName:$this->データベース内のすべてのデータ テーブルの名前> ;
** 著者: 林超奇
** 日 発行日: 2007-04-09
**修飾子:
** 日 発行日: ************************************************* ******/
保護された関数 GetTablesName()
{
$result=$this->db->Query("show table status");
while($Row=$this-& gt;db- >NextRecord($result))
{
$this->TablesName[]=$Row["Name"];
}
return $this->TablesName;
}

/*************************************************** * ***
**メソッド名: GetDataFileName
**機能説明: $this->Databaseの全データテーブルに対応するデータファイルの物理ファイル名を取得
**入力パラメータ: なし
**出力パラメータ: なし
**戻り値: -array Database> のすべてのデータ テーブルに対応するデータ ファイルの物理ファイル名
**著者: Lin Chaoqi
**当日の問題: 2007-04-09
**修飾子:
**当日の問題:
******************************** * ************************* /
保護された関数 GetDataFileName()
{
$this->GetTablesName();
$count=count($this->GetTablesName());
for ($i=0;$i {
$DataFilesName[]=$this->DefaultPath."/".$this->TablesName[$i].".txt";
//echo $DataFilesName[$i];
}
return $DataFilesName;
}

/*************************************************** * ***
**メソッド名: SaveTableStructure
**関数の説明: データ テーブルの構造を install.sql ファイルに保存します。ターゲット パスは $DefaultPath です
**入力パラメータ: なし
**出力パラメータ:なし
** 戻り値: - bool************** ********************************* *************/
保護された関数 SaveTableStructure($text)
{
$fileName=$this->DefaultPath."/Install.sql";
//if( file_exists($fileName))
//{
// unlink($fileName);
//echo $text;
$fp=fopen($fileName,"w+");
fwrite($fp, $text);
}

/**************************************** **************
**方 法名:RestoreTableStructure
** 機能説明:备份$this->データベース内のすべてのデータ表の结构
**入力パラメータ:無し
* *输出:无:无
**返返值: - bool&lt;**著者: Lin Chaoqi
** 日付: 2007-04-09
**修正者:
** 日付:
****************** ***** ************************************************* ************************************************* ************************************************* **********************、= 0; $ sqltext = ""; ; db-&gt; query( "show create $ tablename"); ," ",$sqlText);
$this->SaveTableStructure ($ sqlText);ファイルNAME) {echo "テーブル構造ファイルが見つかりません。以前にバックアップを行ったことを確認してください!"; ;}
$ fp = FOPEN ($ ファイル名, "r");
; //$sqlText=str_replace("r","",$sqlText);
// $ sqltext = str_replace( "n"、 "、$ sqltext); $ result $&gt; $i/2).「構造の回復に失敗しました!n」; {
e->getMessage()); }
***************** *********************
**メソッド名: ImportData
**関数の説明: $this->Database 内のすべてのデータ テーブルのデータを、同じ名前の .txt ファイルからインポートします。ソース パスは $DefaultPath です
**入力パラメータ: なし
**出力パラメータ: なし
**戻り値:-BOOL & LT; True に戻ると、すべてのデータ テーブルのデータ インポートが成功したことを表します
** データ テーブルのすべてまたは一部のデータ導入が失敗したことを意味します & gt; Chaoqi
** 毎日: 2007 -04-09
**修飾子:
**日号:
*************************** ********* ***********************/
経由Out Out Out Out Out Out Out out of t i、$ this-&gt; ; Executesql ("文字セット Gbk の設定"); {{
//$DataFilesName[$i]=str_replace("","/",$DataFilesName[$i])
//echo $DataFilesName[$i]; [ $ i]. $ this- & gt; テーブル名 [$ i]; $ sqlcleAndata = ", utf8";
; ********************************* ****
**メソッド名: ExportData
**関数説明: Export $this->Database 内のすべてのデータ テーブルのデータを同じ名前の .txt ファイルに保存します。ターゲット パスは $DefaultPath
です。**入力パラメータ: なし
**出力パラメータ: なし
**戻り値:- bool** False は、データ テーブルのすべてまたは一部のデータ エクスポートが成功したことを示します。データ テーブルが失敗しました> ;
** 著者: Lin Chaoqi
** 日付: 2007-04-09
**修正者:
** 日付の問題:
*************** ****************************************/
use using using using の' s ' s ' を使用して ' ' を使用するcount; $ i ++)
sql = "select * from"。$ this-&gt; tablesname [$ i]。 "into outfile '"。$ datafilesname [$ i]。 "'; {
sql); true;
// echo "データのエクスポートが成功しました!";;
}
cach (Exception $ e) {
$ this-& gt-& gt; getMessage (getMessage ( getMessage ));
false を返す *** ();
                        $this->ExportData();
return true;
}
catch (Exception $e)
{
$this->db->ShowError($e->getMessage());
false を返します。
exit();
}
}

/*************************************************** * ***
**メソッド名: RestoreDatabase
**関数の説明: $this->Database 内のすべてのデータ テーブルの構造とデータを復元します
**入力パラメータ: なし
**出力パラメータ: なし
**戻り値:-Bool&lt;すべてのデータテーブルのデータベース復元が成功したことを意味します。 ************************ **********************/
関数 RestoreDatabase()
{
試してみてください
{
$this->RestoreTableStructure();
$ this->ImportData();
return true;
}
catch (Exception $e)
{
$this->db->ShowError($e->getMessage());
return false;
exit();
}
}
}
?>[/php]





http://www.bkjia.com/PHPjc/444994.html


www.bkjia.com

tru​​e

技術記事実現データの入出力、データ表構造の入出力 ************************************* ******************/ // //含まれる Mysql データ架操作文件 // require_once(Mysql...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。