Node.js와 Heroku를 사용하고 있습니다. 그리고 내가 온라인으로 발견, 다음 코드에 대한 질문이 있습니다 :Node.js와 Heroku, 두 번째 쿼리를 삽입하는 방법은 무엇입니까?
app.get('/db', function (request, response) {
pg.connect(process.env.DATABASE_URL, function(err, client, done) {
client.query('SELECT * FROM test_table', function(err, result) {
done();
if (err)
{ console.error(err); response.send("Error " + err); }
else
{ response.render('pages/db', {results: result.rows}); }
});
});
});
이것은 test_table 테이블의 내용을 나열을, 그러나 나는 또한 다음과 같은 쿼리를 수행 할 :
* "INSERT INTO를 test_table (fieldOne, fieldTwo) 가치 (MAX (fieldOne) +1, MAX (fieldTwo) 2) "
어떻게이 위의 코드에 통합 할 수 있습니다? 여기
내가 시도 무언가이다,하지만 성공 : 코드의 마지막 청크가 거의 오른쪽 또는 완전히 잘못된 경우
app.get('/db', function (request, response) {
pg.connect(process.env.DATABASE_URL, function(err, client, done) {
client.query('SELECT * FROM test_table', function(err, result) {
done();
if (err)
{ console.error(err); response.send("Error " + err); }
else {
response.render('pages/db', {results: result.rows});
client.query("INSERT INTO test_table (id, name) VALUES (MAX(id)+1,'TEST')", function(err, result) {done();});
}
});
});
});
모르겠어요. 하지만 내가 말할 수있는 것은 DB 테이블 (test_table)이 업데이트되지 않는다는 것입니다. 그것은 다른 사람 도움이 될 경우
fieldOne 및 fieldTwo 란 무엇입니까? 쿼리 매개 변수 또는 POST 요청에서/db로 가져올 수 있습니까? – lkostka
네, 그것들은 test_table에있는 필드의 예일 뿐이며, 여러분은 그것들을 int 값을 포함하는 것으로 생각할 수 있습니다. 나는이 쿼리를 코드 안에 어떻게 통합 할 수 있는지 알아 내려고한다. 몇 가지 옵션이 있다고 가정합니다. 먼저 옵션을 시작해야합니다. fieldOne 및 fieldTwo는 내가 어디에서나 가져올 수없는 쿼리의 일부입니다. – Michel
일단 모든 레코드가 있으면이 쿼리를 수행하려면 else '블록'에 client.query를 추가하지 않는 이유는 무엇입니까? – lkostka