2016-09-01 20 views
1

年の31日後にデータベースを削除したい。しかし、私はデータベースに日付の列がありません。あなたはこれを行うJavaコードを教えてくださいできますか? 私はおそらくmyqlでイベントを使用することができますが、私のアプリケーションに合わせて使用​​する方法はわかりません。また、より良い選択肢はありますか? 次のデータベースを作成しました:日付の列がデータベースに存在しない特定の日付の後に自動的にデータベースを削除する

CREATE TABLE `amount` (                                                                                          

      `userName` VARCHAR(100), 
      `DayCareAmount` INT(11) DEFAULT NULL, 
      `HealthCareAmount` INT(11) DEFAULT NULL, 
      `HealthClubAmount` INT(11) DEFAULT NULL,                                                                                      

      PRIMARY KEY (`userName`)                                                                                           
     ) ENGINE=INNODB AUTO_INCREMENT=16 DEFAULT CHARSET=utf8 
+0

を次のように私はあなたがレコードが追加されたときに – Jens

+0

あなたが列CreatedDateにを追加して記入すべきかわからないので、それは可能ではない、現在の会計年度得た日付 に関してご額フィールドを更新しますレコードが追加された場合 – Jens

答えて

5

は、日付や年フィールド

ALTER TABLE table_name 
ADD column_name datatype 
を追加するには、テーブルを変更した場合

public int getyear(LocalDate date) { 
     System.out.println(date.getYear()); 
     if(date.getMonthValue() < 4){ 
      return date.getYear() - 1; 
     } 
     return date.getYear(); 

    } 
4

データベーステーブルに年の列を追加する必要があります。 あなたのJSPからフェッチされた日付は、特定の会計年度であるかどうかをチェックし、データベーステーブルにその年格納するサーブレット内のロジックを書く(

 `userName` VARCHAR(100), 
     `DayCareAmount` INT(11) DEFAULT NULL, 
     `HealthCareAmount` INT(11) DEFAULT NULL, 
     `HealthClubAmount` INT(11) DEFAULT NULL, 
     finYr INT(4),                                                                                      

     PRIMARY KEY (`userName`)                                                                                           
    ) ENGINE=INNODB AUTO_INCREMENT=16 DEFAULT CHARSET=utf8 

TABLE amountを作成します。 年をフェッチしている間、あなたが使用することができますその特定の年度のデータを取得するためのfinYrの句。

関連する問題