2012-03-20 14 views
2

私はTEXTフィールドを日付フォーマットに変換する方法とPythonを使って日付オブジェクトを作成する方法についてはすべて読んできましたが、私の質問は残っています。日付形式のみのSQLite属性の制御入力。

私のテーブルにはTEXTとして指定されたdateTimeカラムがありますが、入力をdateTimeフォーマットに強制する制約を作成したいのですが、SQLiteは(私が望むように)どのようにそれを行うに取り組みました。

私の現在のアイデア:1.文字の数を制限する 2.日、月、年のそれぞれの属性を設定し、ドメインを制限する 3.データベース側でこれを行うのは愚かです

これらのオプションやその他のオプションについてご意見をお寄せいただきありがとうございます。 ありがとう:)

答えて

4

私は同じ問題を解決しようとしています。私が思いついた方法は、日付/時刻関数を使用して値を解析し、変更されていないことを確認することでした。基本的に次のよう

CREATE TABLE dts_test (
    dts  TEXT CHECK (dts IS datetime(dts)) 
); 

デフォルトのフォーマットはあなたが好きな形式に設計するstrftimeまたは類似を使用することができますが、それはbuilt-in date and time functionsが解析できるものでなければならない何をしたいではない場合。