日付を含むファイル(yyyy/MM/dd形式)を読み込み、Datastax Java Driverを使用して日付を読み取り、それをcassandraテーブルに追加するプログラムを作成しました。 たとえば、私のレコードに '2010/06/01'の日付値が含まれている場合、この日付値は(SimpleDateFormatクラスを使用して)日付オブジェクトに変換されます。Cassandra:タイムスタンプ値のタイムゾーンを無視する
Iは、データベース内の(日付を含む)データを表示するときしかし、私は(カサンドラテーブルのタイムスタンプ型である)日付は、以下を示すことがわかる。
2010-06-01 00:00:00+0100
問題ここで私はタイムスタンプに "+0100"(英国の夏の時間であることを示すため)が必要ではなく、 "2010-06-01 00:00:00 + 0000"のように日付を保存したいと思っています"
私がしようとすると、以下の操作を実行してタイムゾーンを「無視」するために私のプログラムに次のことをやった:私は私のプログラムにデバッグ文を追加したときに今、私はそれを見ることができます...
SimpleTimeZone tz = new SimpleTimeZone(0, "Out Timezone");
TimeZone.setDefault(tz);
String dateStringFromFile = "2010/06/01";
SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd");
Date theDate = sdf.parse(dateStringFromFile);
ログファイルに "2010-06-01 00:00:00 + 0000"と表示されます(これは私にとっては正しいことです)。しかし、私はカサンドラに保存されている日付を見ると、私はまだ "2010-06-01 00:00:00 + 0000"ではなく、 "2010-06-01 00:00:00 + 0100"
タイムゾーンを無視する(すなわち、日付に+0100を入れずに+0000を入れないように)変更または更新する必要があることはありますか?タイムスタンプは「2010-06- 01 00:00:00 + 0000」?
何かアドバイスが高く評価され
のJava 8、私はドッカーVM(のCentOSのLinux)上カサンドラ3.0.5を実行していますのでご注意ください。
ありがとうございました。
データをどのように表示しますか? cqlshでcqlshrcファイルのUIセクションを変更した場合 –
こんにちは、DBeaver(UIプログラム)を使用しています。 – rm12345
それは奇妙なことかもしれません。あなたのJavaコードまたはcqlshを確認する –