こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

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));
----

投稿日時 - 2010-02-02 12:42:28

QNo.5643124

すぐに回答ほしいです

このQ&Aは役に立ちましたか?

1人が「このQ&Aが役に立った」と投票しています

回答(1)

ANo.1

>カラムのタイプがdatetimeだと上手くいきません。

うまく行かないとは、具体的にどのようになるのですか?エラーメッセージなり、格納したデータの検索結果なり、具体的に提示してください。

>カラムのタイプをdatetimeからtextに変更するのは避けたい

SQLiteのバージョンは、何でしょうか?
SQLiteはデータ型の実装を限定していて、日時の形式により、内部的にはtextやintなどのデータ型として格納されます。

投稿日時 - 2010-02-02 17:22:58

お礼

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

回答していただいてありがとうございました!

投稿日時 - 2010-02-03 12:05:21

あなたにオススメの質問