채택완료

질문드려요~

먼저 죄송합니다.

 

그누보드 관련되어 그누보드 QA 게시판에 글을 올려여 하는데

NODE QA 게시판이 보이지 않아서..

 

var sql = "SELECT * FROM topic where id='aaa'";
conn.query(sql, function(err, rows, fields){
  if(err){
      console.log(err);
  } else {
      for(var i = 0; i < rows.length; i++){
        console.log(rows[i].title);
      }
  }
});

 

위와같이 하면 콘솔에 원하는 값이 잘 출력이 됩니다.

 

여기서

 

var sql = "SELECT * FROM topic where id='aaa'";
conn.query(sql, function(err, rows, fields){
  if(err){
      console.log(err);
  } else {
      for(var i = 0; i < rows.length; i++){
        console.log(rows[i].title);
      }
  }
});

var aaaaa = rows[0].title;
console.log(aaaaa);

 

이렇게 하면   aaaaa  값을 얻을수 있을거 같은데..
안되네요..초보라 열심히 구글링은 하고 있는데 원하는 답을 찾지 못하고 있네요.
 

|

답변 4개 / 댓글 1개

채택된 답변
+20 포인트

https://www.npmjs.com/package/mysql2

패키지를 사용하는 예제입니다.

 

Copy
// get the client
const mysql = require('mysql2');

 

async function test() {
  // create the connection
  const conn = await mysql.createConnection({host:'localhost', user: 'root', password: 'password', database: 'test'});

 

  var rows = null;
  var sql = "SELECT * FROM topic where id='aaa'";

 

  await conn.promise()
  .query(sql)
  .then(([results, fields]) => {
    rows = results;
    for(var i = 0; i < results.length; i++){
      console.log(results[i].title);
    }
  })
  .catch(console.error)
  .then(conn.end());

 

  if (rows != null) {
    var aaaaa = rows[0].title;
    console.log(aaaaa);
  }
}

 

test();

답변 주신 모든분께 감사드립니다~~

rows는 conn.query() 안에서만 받는 값이기 때문에 이 구역 밖에서는 값이 없어 사용할 수 없습니다.

혹시 이걸 물어보시는 건지요?

var sql = "SELECT * FROM topic where id='aaa'";
conn.query(sql, function(err, rows, fields){
  if(err){
      console.log(err);
  } else {
      for(var i = 0; i < rows.length; i++){
        console.log(rows[i].title);
      }

      var aaaaa = rows[0].title;
      console.log(aaaaa);

      // 이곳에서 aaaaa 값을 활용하여 원하는 동작 수행
  }
});
 

답변에 대한 댓글 1개

이렇게요^^

var sql = "SELECT * FROM topic where id='aaa'";
conn.query(sql, function(err, rows, fields){
if(err){
console.log(err);
} else {
for(var i = 0; i < rows.length; i++){
console.log(rows[i].title);
}
});

var aaaaa = rows[0].title;
console.log(aaaaa);

답변을 작성하려면 로그인이 필요합니다.