人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

PHP+MYSQLでテーブルの変更時間をチェックして、10分経っていたら、データを入れ直す ということをしようと考えています。

そこで、
SHOW TABLE STATUS
が使えるのではないかと思ったのですが、いまいち使い方がわかりません。

SHOW TABLE STATUS WHERE Name = 't_aaa'
として出てきた結果のUpdate_timeと今を比較すればいいのかなとも思うのですが、どこにSELECTを入れていいものか見当がつきません。

どうすればいいのでしょうか?
できれば、「Update_timeと今を比較して、10分経っているか」のチェック方法もわかればありがたいです。

●質問者: dingding
●カテゴリ:インターネット ウェブ制作
✍キーワード:MySQL name PHP SELECT いまいち
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ● b-wind
●60ポイント

SHOW 構文と組み合わせたければ一旦データを取ってきた上で PHP 上で比較するしかないですね。


MySQL AB :: MySQL 4.1 リファレンスマニュアル :: 6.2.2.2 DATETIME、DATE、TIMESTAMP 型

テーブルに timestamp 型のカラムを追加した方が希望の要件が満たせると思います。

INSERT,UPDATE 時に現在時刻で自動的に更新されますので更新日時として扱えます。

SELECT * FROM table
 WHERE update_time < now() - INTERVAL 10 MINUTE;

で、入れなおすべきレコードが選択できます。

◎質問者からの返答

なるほど!その手がいいですね。

ありがとうございます。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ