PHP Laravelで、SQLite3からMySQLへDB変更 日付フォーマットでエラー
今、はやわかりのグラフ表示ツールをLaravelで作成しています。
これができれば、グラフ表示ツールのクラウド化も可能になるからです。
グラフ表示の部分とWindowsクライアントツールからAPIでたたく部分を大方作成でき、後は認証部分とかを作っていこうかと考えているところです。
なお、グラフ表示については、前に作成したように、Googleの仕組みを踏襲しました。
最初、LaravelでSQLite3をデータベースにしていたのですが、データが大量になってくる可能性があるので、MySQLへ変更することにしました。
.envファイルの内容を変更すればデータベースの変更ができるはずです。
ところが、いざ変更してみると、以下のように日付形式のカラムに関するエラーが出るようになりました。
[2017-10-15 06:40:34] local.ERROR: SQLSTATE[22007]: Invalid datetime format: 1292 Incorrect datetime value: '10/15/2017 00:02:00' for column 'dt' at row 1 (SQL: insert into 〜省略〜, PDOException(code: 22007): SQLSTATE[22007]: Invalid datetime format: 1292 Incorrect datetime value: '10/15/2017 00:02:00' for column 'dt' at row 1 at /home/ubuntu/workspace/owl_energy/vendor/laravel/framework/src/Illuminate/Database/Connection.php:458
php artisanで作成したテーブルの日付形式のカラム(ここでは"dt")に対して、
SQLite3のデータベース無いのデータはMM/dd/yyyy 形式ですが、アプリケーションからの読み書きはyyyy-MM-dd形式でも認識してくれました。ところが、MySQLに対してはそれは通用しなかったようです。
従って、日付形式を指定することでエラーを回避することができました。
Laravelでアプリケーション作成する際に参考にしているのは
これです。KindleでUnlimitedであれば読み放題です。
これを何度も読み返しつつ+ググって、基本的なPHPアプリケーションの作成ができるようになりました。とてもオススメです。
他にもLaravelの参考書は以下のものがあります。
PHP初めてのシリーズは好評のようです。
PHP初めてのフレームワーク Laravel5.3/5.4 〜ステップ3〜 ファイルアップロード
- 作者: 山崎大助
- 発売日: 2017/04/06
- メディア: Kindle版
- この商品を含むブログを見る
PHP初めてのフレームワーク Laravel5.3/5.4〜 ソーシャルログイン(SNS認証)〜
- 作者: 山崎大助
- 発売日: 2017/07/17
- メディア: Kindle版
- この商品を含むブログを見る
Laravelエキスパート養成読本[モダンな開発を実現するPHPフレームワーク!] (Software Design plus)
- 作者: 川瀬裕久,古川文生,松尾大,竹澤有貴,小山哲志,新原雅司
- 出版社/メーカー: 技術評論社
- 発売日: 2015/04/21
- メディア: 大型本
- この商品を含むブログを見る
Laravel リファレンス[Ver.5.1 LTS 対応] Web職人好みの新世代PHPフレームワーク
- 作者: 新原雅司,竹澤有貴,川瀬裕久,大村創太郎,松尾大
- 出版社/メーカー: インプレス
- 発売日: 2016/01/08
- メディア: Kindle版
- この商品を含むブログ (1件) を見る
Laravel: Up and Running: A Framework for Building Modern PHP Apps
- 作者: Matt Stauffer
- 出版社/メーカー: O'Reilly Media
- 発売日: 2016/11/21
- メディア: Kindle版
- この商品を含むブログを見る