2016-06-13 10 views
1

私はJavaとMySQLの絶対的なnoobです。ユーザーがログインして登録する必要がある場所を指定することができます。すべてのコードが完了しました。しかし、ユーザーのログインが6ヶ月で期限切れになるような小さな部分があります。私はSELECT DATEDIFF(month,'2014-06-05','2014-08-05') AS DiffDateを使ってそれを達成しようとしています。私はユーザーの登録日付を追跡することができますが、2回目の日付で私はちょっと困惑しています。ユーザーログインの現在の時刻をどのように追跡することができますか。助言がありますか。ありがとうございました。mysqlは2つの日付を比較します

+0

ですから、二日付として現在の日付をしたいですか? 'NOW()'や 'CURDATE()'と同じですか? – Blank

+0

確かにSQLとの比較はできますか? dbからユーザ/セッションデータをロードしてセッション状態をチェックするときには、現在の時刻とjavaの時刻を比較することもできます。また、セッションデータをdb(またはキャッシュ層、またはローカルメモリ内)に保存して、動作させる必要があります。 'UPDATE users 'のようにSET last_login = NOW()WHERE userid =? – zapl

+0

これは私が達成しようとしているものです。しかし、私の出力は次のように言っています:SELECT DATEDIFF(月、 'dayLastLogin'、NOW())を使用している場合、 "DADDIFF 'というネイティブ関数の呼び出しで不正なパラメータが発生しました。 NETBEANSでJavaを使用してクエリを実行する – PLab

答えて

1

あなたはMySQLのNOW()を使用することができます。

SELECT DATEDIFF(month,'2014-06-05',NOW()) AS DiffDate 
+0

私の出力は、「SELECT DATEDIFF(月、 'dayLastLogin'、NOW())を使用している場合、「DATEDIFF」というネイティブ関数の呼び出しでパラメータのカウントが正しくありません。 NETBEANSでJavaを使用したクエリ – PLab

関連する問題