• 締切済み

SQLiteでのDateTimeの扱い

SQLiteのデータベースにphpで値を保存したいのですが、カラムのタイプがdatetimeだと上手くいきません。 現在の時刻をSQLiteに書き込むということをしたいです。 カラムのタイプをdatetimeからtextに変更するのは避けたいので、下のphpを変更して書き込めるようにするにはどうすれば良いのでしょうか? 詳しい方よろしくお願いします。 SQLite DB ---- CREATE TABLE "dt" ("ID" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL ,"REGIST" DATETIME) ---- PHP ---- $sqlite = 'SQLiteへのパス'; $db = new PDO($sqlite); $now = date('Y-m-d H:i:s'); $nfe = $db->prepare('insert into dt(REGIST) values(?)'); $nfe->execute(array($now)); ----

みんなの回答

回答No.1

>カラムのタイプがdatetimeだと上手くいきません。 うまく行かないとは、具体的にどのようになるのですか?エラーメッセージなり、格納したデータの検索結果なり、具体的に提示してください。 >カラムのタイプをdatetimeからtextに変更するのは避けたい SQLiteのバージョンは、何でしょうか? SQLiteはデータ型の実装を限定していて、日時の形式により、内部的にはtextやintなどのデータ型として格納されます。

optional
質問者

お礼

当該のSQLiteのバージョンで扱えるデータ型にdatetimeがありませんでした。 よって前提を覆してdatetimeからtextへと変更し解決しました。 回答していただいてありがとうございました!