####【概要】
カラム値に変更があった際に、変更されたテーブル内の情報をcsv形式で書き出す。なお公開用として制作。
php内でdbに対してある処理を行ったら、csvに
sql
1.mode csv 2.output csvファイルパス 3select * from テーブル名;
この処理を行うようにしたかったので以下のように記述した所、エラーが出て動きませんでした。
php
1$sql_result = $db->query(".mode csv .output csvファイルパス select * from テーブル名;");
何故でしょうか。
一人で悩んだ結果、modeコマンドはphpから実行できないのではないかという結論に至ったのですがこの考え方で間違いないでしょうか。
ご教授宜しくお願い致します。
####【追記】modeコマンドを使わない場合の記述
下記で問題なく動きました。
php
1$db = new SQLite3('dbパス'); 2$csv_path = 'csvファイルパス'; 3$sql_result = $db->query("SELECT * FROM テーブル名 ORDER BY id ASC"); 4 5$edit = ""; 6while( $data = $sql_result->fetchArray() ) { 7$edit .= "{$data['id']},{$data['name']},{$data['age']},{$data['sex']}\n"; 8} 9 10$fp = fopen($csv_path, 'w'); 11fwrite($fp, $edit); 12fclose($fp); 13 14$db->close();
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/05/30 02:23