dump_table

(CDBT 2.0.0)

dump_table指定テーブルのダンプ用SQL文を生成します

Description

string dump_table ( string $table_name [, array $columns, bool $contains_create_sqlFALSE ] )
指定したテーブルのダンプ用SQL(INSERT文)を生成します。生成されたテーブルダンプ用SQL文の文字列を返します。サーバ側のMySQLクライアントでmysqldumpが利用できない場合でもmysqldumpと同等なダンプSQL文を生成可能です。

Parameters

table_name
ダンプするテーブル名。
columns
ダンプされるSQLに含まれるINSERT文に含めるカラム名の(一次元)配列。空配列指定時や省略した場合は全てのカラムが対象になります。
contains_create_sql
ダンプされるSQLにCREATE TABLE文を含めるかどうかを真偽値で指定できます。省略時は初期値のFALSEとなります。バージョン2.0.7で追加されました。

Return

生成されたダンプSQLの文字列が返ります。パラメータに不備があったり、ダンプSQLが生成できなかった場合は空の文字列が返ります。

History

バージョン 内容
2.0.0 CDBT v1の同名メソッドをリファクタリング
2.0.7 contains_create_sql引数を追加

Example

例1 指定したテーブルの(CREATE TABLEのSQL文付き)ダンプファイルをダウンロードする。

<?php
  global $cdbt;
  $table_name = "prefix_table";
  $dump_sql = $cdbt->dump_table( $table_name, [], true );
  $content_length = strlen( $dump_sql );
  header( 'Content-Disposition: inline; filename="'. $table_name .'.sql"' );
  header( 'Content-Length: '. $content_length );
  header( 'Content-Type: application/octet-stream' );
  echo $dump_sql;

Reference

Related Methods