2017-01-31 5 views
0

node.js를 사용하여 DB2 데이터베이스에 연결하고 다른 쿼리를로드하고 있습니다. 하지만 사용자 입력에서 매개 변수를 사용하고 싶습니다. 내 연결 문자열은 다음과 같습니다Node.js 매개 변수가있는 DB2 쿼리

var ibmdb = require("ibm_db") 
    , cn = "DATABASE=namedb;HOSTNAME=hst;UID=portal;PWD=portalpwd;PORT=50000;PROTOCOL=TCPIP;" 
    ; 

하지만 내 쿼리가 정적, 나는 사용자 입력에서 매개 변수/변수를 전달해야합니다.

나는 var rl = require('readline');와 사용자 입력을 사용하고 있지만, 문제는 지금이 쿼리에 변수를 전달하고 동적 매개 변수하지 단일 값과 같은 nameid

var rows = conn.querySync(
    "select name,id,uid,password,type from db21.rep_name fetch first 10 rows only" 
); 
+0

설명서를 읽으려고 했습니까? 특히,'querySync()'에 대한'bindingParameters' 인자에 대해서요? – mustaccio

답변

1

Node.js package ibm_dbfully documented입니다 넣어하는 방법이다 . 비동기 버전인지 동기화 버전인지 여부와 처음 준비 할 것인지 여부에 따라 문제를 해결할 수있는 여러 가지 방법이 있습니다.

아마도 가장 간단한 옵션은 이미 완료 한대로 querySync을 사용하는 것입니다. 값 배열로 전달할 선택적 매개 변수 bindingParameters이 있습니다. 이들은 ?을 가진 모든 장소에 묶여 있습니다. 다음과 같은 것이 효과가있다.

var rows = conn.querySync(
    "select name,id,uid,password,type from db21.rep_name where name=? fetch first 10 rows only", ['henrik'] 
); 
+0

select * from db21.rep_name 여기서 customer =? 첫 번째 열만 가져옵니다. ", [ 'customer']) --- 사용자 입력이 필요하고 고객에게 결과를 입력하십시오. – andress

+0

괜찮습니다. 고맙습니다. – andress

관련 문제