1

Codeigniter と MySQL で TIMESTAMP を更新するにはどうすればよいですか? INTERVAL 1 MINUTE 次のコードを試して更新したい:

$data = array('is_active' => $state, 
              'timestamp_demo' => "DATE_ADD(NOW(), INTERVAL 1 MINUTE)");
$this->db->where('demo_session_id', 'web');
$this->db->update('demo_session', $data);

しかし、うまくいきません。どのようにできるのか?

4

2 に答える 2

4

これは、使用している Active Records で行うことができます。

$this->db->where('demo_session_id', 'web');
$this->db->set('is_active', $state);
$this->db->set('timestamp_demo', 'DATE_ADD(NOW(), INTERVAL 1 MINUTE)', FALSE);
$this->db->update('demo_session');

の 3 番目のパラメーターは$this->db->set()、CodeIgniter がデータをエスケープするのを防ぎ、MySQL 関数を使用します。

次のようになります。

UPDATE 'demo_session' SET 'is_active' = $state, 'timestamp_demo' = DATE_ADD(NOW(), INTERVAL 1 MINUTE) WHERE 'demo_session_id' = 'web'

于 2013-02-05T22:10:22.553 に答える
4

このようにクエリを試してください

$this->db->query("UPDATE demo_session 
                  SET 
                     is_active = 1, 
                     timestamp_demo = DATE_ADD(NOW(), INTERVAL 1 MINUTE)
                  WHERE demo_session_id = 'web'");
于 2013-01-25T19:13:33.013 に答える