私は SQLite SQL ステートメントまたはクエリを使用しています。
これまでのところ、そのような SQL ステートメントを実行するときに問題を引き起こす可能性があるスタックオーバーフローの質問をすることで、いくつかのことを理解することができました。
しかし、私はまだ結果を得ることができませんか?
ここに私のSQLクエリがあります:
SELECT *
FROM Alarms
WHERE ALARMSTATE IN (0,1,2)
AND ALARMPRIORITY IN (0,1,2,3,4)
AND ALARMGROUP IN (0,1,2,3,4,5,6,7)
AND DateTime(ALARMTIME) BETWEEN datetime("2012-08-02 00:00:00")
AND datetime("2012-08-03 00:00:00")
ORDER BY ALARMTIME DESC
以下は、datagridView コントロール内で表示されたテーブルです。 ご覧のとおり、テーブルには昨日と一昨日のレコードがあります。
データ型が TEXT である ALARMTIME などの形式の問題があるすべての列を修正しました。それでも結果が得られないので、以下のように SQLite Administrator アプリケーション内から直接 SQL ステートメントを実行することにしました。驚いたことに、データセットに対して何もないか、nill または null である同じ結果が得られました。ただし、SQLite Administrator は、DateTime が TEXT ではなく TIMESTAMP のみをパラメーターとして受け入れることを示しました。もしそうなら、他のすべてが正しいとしても、上記の SQL ステートメントは機能しません。そう言うのは正しいですか?