2

ここから SQL Dump Task を見つけましたhttp://bakery.cakephp.org/articles/carcus88/2011/04/08/sql_dump_task_for_shells

シェルで使用します。もう宣言した

$タスク = 配列('SqlDump')

そして、これらのコードを main() の最後の行に入れました

pr($this->SqlDump->dump_array());

しかし、SQLは出力されません。使い方わかる人いたら教えてください。

4

1 に答える 1

1

シェルは通常、出力サイズが制限されています (出力が多すぎる場合、シェルの一部が切り取られる場合があります)。したがって、ログソリューションを使用します。

コンポーネントのアプローチを確認してください: https://github.com/dereuromark/tools/blob/2.0/Controller/Component/CommonComponent.php#L601

シェル環境では書き換え可能かもしれません。基本的に、SQL ログを取得してファイルに書き込みます。

$log = $object->getDataSource()->getLog(false, false);
CakeLog::write('sql', $log);

もちろん、画面に印刷することもできます。

于 2012-06-08T10:39:02.063 に答える