1
Node.js 앱을 PostgreSQL 서버에 연결하려고합니다. 처음에는 문서 here의 예와 같은 new pg.Client()
를 선언 한에서net.Stream가 생성자가 아닙니다 - Node Postgres
bundle.js:16177 ERROR: TypeError: net.Stream is not a constructor
at new Connection (bundle.js:10133)
at new Client (bundle.js:9704)
at Object.create (bundle.js:11308)
at Pool._createResource (bundle.js:510)
at Pool.dispense [as _dispense] (bundle.js:498)
at Pool.acquire (bundle.js:573)
at Pool.pool.connect (bundle.js:11359)
at PG.connect (bundle.js:10876)
at bundle.js:1642
하지만, 위의 오류가 나쁜 수 있습니다 발견 가지고 : 내가 사용하는 상관없이, 나는 같은 오류로 끝날 것 같다 this 스택 오버 플로우 게시에 따른 아이디어.
나는pg.connect()
를 사용하여 시도 : 여기
var pg = require('pg'); //postgresql dependency
var connectionString = "postgres://postgres:[email protected]/localhost:5432/Milestone1DB"
console.log("Initiating...");
//var connectionString = "postgres://postgres:[email protected]/localhost:5432/Milestone1DB";
//var client = new pg.Client();
//connect to the database
console.log("Attempting to connect to the database");
pg.connect(function (err, client, done)
{
if(err)
{
console.log("Error connecting to the database.");
throw err;
}
client.query("SELECT DISTINCT state FROM business ORDER BY state", function (err, result)
{
if(err)
{
console.log("Query resulted in an error.");
throw err;
}
console.log(result.rows[0]);
client.end(function (err)
{
if(err)
{
console.log("Error disconnecting from the databse.");
throw err;
}
});
});
});
내가 시도 PG-약속 코드입니다 : 내가 모르는 뭔가가 있어야합니다
var pgp = require('pg-promise');
var cn = {
host: 'localhost', // server name or IP address;
port: 5432,
database: 'Milestone1DB',
user: 'postgres',
password: 'thisissuchagoodpassword'
};
var db = pgp(cn); // database instance;
db.any("select distict state from business order by state;")
.then(data => {
console.log("DATA:", data);
})
.catch(error => {
console.log("ERROR:", error);
});
,하지만 난 어디 있는지 모르겠어요. 이 오류의 의미를 파악하는 데 도움을 줄 수있는 사람에게 감사드립니다.
''pg-promise' 사용법이 잘못되었습니다. 'var pgp = require ('pg-promise'); 대신에 문서에 따라'var pgp = require ('pg-promise') (/ * 초기화 옵션 * /);'이 있어야합니다. –
@ vitaly-t, 응답 해 주셔서 감사합니다. 내 응용 프로그램에서'require()'를 정의하기 위해 Browserify를 사용하고 있는데 문서의 두 번째 매개 변수'var pgp = require ('pg-promise')();를 추가하면' require (...)는 함수가 아닙니다. ' 내가 Browserify 외에 뭔가를 사용해야합니까? –
'pg-promise'는 엄밀히 말하면 서버 측 모듈입니다. 왜 Browserify를 사용해야할까요? :) –