inflearn logo
강의

講義

知識共有

[2021]最近誰が有料でウェブサービスを構築するのか、ファイアベースのすべて - Javascript

firebase cloud function 외부 디비 연결 문의

698

thsejrwn78088765

投稿した質問数 2

0

강의는 모두 수강했습니다. 

강의가 길지 않고 지루하지않아서 쉽게 수강했습니다. 

문의사항이 있습니다. 

강의에는 구글 클라이우드 자체 DB에 연결해서 CRUD작업을 하는데요

aws rds mysql 로 연결해서 CRUD 작업을 할려면 firebase cloud function 을 이용해야 한다고 하는데요

어떻게 하면 되는지 참조할만한 문서나 사이트가 있을까요 ?

감사합니다.

firebase

回答 1

0

David

안녕하세요 ^^

대부분 Firebase 가 이미 DB를 제공하는 기반이라 CRUD를 Firestore/Firebase를 사용하지 않고 mySQL를 사용하는 아키텍처는 흔하지 않을것 같아요.

샘플 소스를 하나 예제로 이 부분 참고 해주시면 될것 같습니다.

var mysql = require('mysql');
var pool = mysql.createPool({
host: 'xxxxxxxxxx.rds.amazonaws.com',
user: 'username',
password: 'password',
port: 3306,
database: "database",
debug: false
});

이렇게 선언을 해주시구요.

데이타 쿼리는 아래와 같은 문법을 사용해서 사용을 하시면 되구여


function fncMySQLQuery() {
pool.getConnection(function (err, connection) {
if (err) {
console.error('Database connection failed: ' + err.stack);
return;
}
else {
connection.query('SELECT * FROM DUAL', function (error, results, field) {
if (error !== null) {
return console.log(error);
}
else {

results.forEach(item => {
console.log(item);

});
}
connection.release();
});
}
});
}

update 는 아래와 같이 하시면 되구여

var _updateStatement =
"update usertable SET column = "+_column;

pool.getConnection(function (err, connection) {
// connection.connect(function (err) {
if (err) {
console.error("Database connection failed: " + err.stack);
response.send({ status: "fail", data: err.stack });
} else {
connection.query(_updateStatement, function (error, result) {
if (error !== null) {
response.send({ status: "fail", data: error });
} else {
console.log("Number of records updated: " + result.affectedRows);
connection.release();
response.send({ status: "success", data: "ok" });
}
});
}
});

insert 는 아래와 같은 문법을 사용하시면 됩니다.

var _insertStatement =
"insert into usertable ( column1,column2 ) select 'x1','x2' from dual";

pool.getConnection(function (err, connection) {
// connection.connect(function (err) {
if (err) {
console.error("Database connection failed: " + err.stack);
return;
} else {
connection.query(_insertStatement, function (error, results, field) {
if (error !== null) {
return console.log(error);
}

connection.release();
});
}
});

 

더백님 감사합니다

1

37

1

39. Main화면 추가 UI 에서 자료는 어디서 받나요??

0

36

1

미션 마감일시를 좀 늘려주세요

0

45

1

개인브랜딩 사이트 만들기가 마감일시가 있었네요.

0

38

1

최종 과제 제출

0

82

3

주사위앱 소개 및 레이아웃 설정 문제

0

59

2

파이어베이스 문의

0

41

2

searchable이 화면 하단에 위치해요

0

62

2

Recoil 에러

0

70

1

cleric.fbx 파일을 열 수 없다는 에러가 뜹니다

0

64

2

강의 15분에 질문드립니다

0

67

2

안녕하세요 Firebase Storage로 모바일게임 업데이트시스템을 만들려고하는데요

0

339

1

Firebase CLI 설치 시, 에러가 납니다! - sudo로 해결

2

1885

1

스프링부트 프로젝트는 firebase 로 배포할 수 없나요???

0

1705

1

Database활용[CRUD]-SubPart1 관련 질문

0

167

1

Auth 활용[구글 Social 계정 로그인] 강의에서 오류가뜨네요

0

878

22

5강에서 jquery쓰시는 부분

0

243

2

올려주신 강의교안 파일이 너무 커요

0

234

1

강의 중에 사용하시는 파란 리본 아이콘의 앱은 무엇인가요?

0

585

1

3강 개발환경셋업 끝부분 질문입니다.

0

395

1

몽고DB는 어떨까요?

0

357

1

windows에서 startup.bat

1

679

3

-bash: ./startup.sh: Is a directory

0

375

1

Firebase 호스팅 강의 질문합니다

0

306

6