LoginSignup
1
1

More than 5 years have passed since last update.

nodeから5分毎にpostgresqlのデータを更新したい

Last updated at Posted at 2016-10-10

メモ書き

nodeを使ってpostgresのデータを5分おきに更新かける処理をかこうとしたら結構詰まったので


テスト用テーブル
CREATE TABLE test
(
    id character varying(100),
    name text,
    updatetime date
);

setInterval使った


var pg = require('pg');

var connectString = "tcp://postgres:postgres@localhost:5432/testdb";


setInterval(function(){pgcon()}, 5000);

function pgcon() {
  pg.connect(connectString, function(err, client) {
      if (err) {
          console.log('Connection Error:', err);
          throw err;
      } else {
        var qs = "UPDATE test SET updatetime = now() WHERE name = 'userA';";
        client.query(qs, function(err, result) {
            if(err) {
                console.log('Error');
                throw err;
            } else {
              console.log('Success');
            };
        });
      }
  });
}

最初はpg.connect内でsetTimeoutやsleep使っていたが、connect中にsleepさせると
うまくいかないみたいなので上記のやり方に

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1