반응형
Notice
Recent Posts
Recent Comments
Link
개발은 처음이라 개발새발
Node.js에서 MySQL 연동하기 - 기초 가이드 본문
반응형
이번 시간에는 Node.js에 MySQL을 연동해보겠습니다. 먼저 MySQL 모듈을 설치해야 합니다.
npm install mysql
1. 모듈 불러오기
Node.js에서 MySQL을 사용하기 위한 모듈을 불러옵니다.
const mysql = require('mysql');
2. 연결 설정
const connection = mysql.createConnection({
host: 'localhost',
user: 'root',
password: '비밀번호',
database: '연결할 데이터베이스'
});
- host: MySQL 서버 주소
- user: MySQL 사용자 이름
- password: MySQL 비밀번호
- database: 사용할 데이터베이스 이름
3. 데이터베이스 연결
try-catch 구문을 사용하여 연결 시도 중 발생할 수 있는 에러를 처리합니다.
try {
connection.connect();
console.log('MySQL 연결 성공');
} catch(err) {
console.error('MySQL 연결 실패:', err);
}
4. 쿼리 실행
connection.query() 함수로 SQL 쿼리를 실행합니다.
try {
connection.query('SELECT * FROM 테이블명 limit 5;', (error, results, fields) => {
if (error) {
throw error;
}
console.log('조회결과:', results);
console.log('필드정보:', fields);
});
} catch (err) {
console.log('쿼리 실행 실패:', err);
}
error: 쿼리 실행 중 발생한 에러
results: 쿼리 실행 결과
fields: 결과 필드 정보
5. 연결 종료
데이터베이스 작업이 끝나면 반드시 연결을 종료해야 합니다.
try {
connection.end();
console.log('연결이 성공적으로 종료됐습니다.');
} catch (err) {
console.error('연결 종료 실패:', err);
}
이상으로 Node.js에서 MySQL을 연동하는 기본적인 방법을 알아보았습니다. 아래는 코드 전체 구문과 결과 일부분입니다.
const mysql = require('mysql');
// 데이터베이스 연결 설정
const connection = mysql.createConnection({
host: 'localhost',
user: 'root',
password: '1234',
database: 'hr'
});
// 데이터베이스 연결
try {
connection.connect();
console.log('MySQL 연결 성공');
} catch(err) {
console.error('MySQL 연결 실패:', err);
}
// 쿼리 실행
try {
connection.query('SELECT * FROM hr_cate limit 5;', (error, results, fields) => {
if (error) {
throw error;
}
console.log('조회결과:', results);
console.log('필드정보:', fields);
});
} catch (err) {
console.log('쿼리 실행 실패:', err);
}
// 연결 종료
try {
connection.end();
console.log('연결이 성공적으로 종료됐습니다.');
} catch (err) {
console.error('연결 종료 실패:', err);
}
---------------------------------------------------------------------------------------
MySQL 연결 성공
연결이 성공적으로 종료됐습니다.
조회결과 : [
RowDataPacket {
EmployeeNumber: 1,
Attrition: <Buffer 59 65 73>,
BusinessTravel: <Buffer 54 72 61 76 65 6c 5f 52 61 72 65 6c 79>,
Department: <Buffer 53 61 6c 65 73>,
EducationField: <Buffer 4c 69 66 65 20 53 63 69 65 6e 63 65 73>,
Gender: <Buffer 46 65 6d 61 6c 65>,
JobRole: <Buffer 53 61 6c 65 73 20 45 78 65 63 75 74 69 76 65>,
MaritalStatus: <Buffer 53 69 6e 67 6c 65>,
OverTime: <Buffer 59 65 73>
},
RowDataPacket {
EmployeeNumber: 2,
Attrition: <Buffer 4e 6f>,
BusinessTravel: <Buffer 54 72 61 76 65 6c 5f 46 72 65 71 75 65 6e 74 6c 79>,
Department: <Buffer 52 65 73 65 61 72 63 68 20 26 20 44 65 76 65 6c 6f 70 6d 65 6e 74>,
EducationField: <Buffer 4c 69 66 65 20 53 63 69 65 6e 63 65 73>,
Gender: <Buffer 4d 61 6c 65>,
JobRole: <Buffer 52 65 73 65 61 72 63 68 20 53 63 69 65 6e 74 69 73 74>,
MaritalStatus: <Buffer 4d 61 72 72 69 65 64>,
OverTime: <Buffer 4e 6f>
}
]
필드정보 : [
FieldPacket {
catalog: 'def',
db: 'hr',
table: 'hr_cate',
orgTable: 'hr_cate',
name: 'EmployeeNumber',
orgName: 'EmployeeNumber',
charsetNr: 63,
length: 11,
type: 3,
flags: 0,
decimals: 0,
default: undefined,
zeroFill: false,
protocol41: true
},
FieldPacket {
catalog: 'def',
db: 'hr',
table: 'hr_cate',
orgTable: 'hr_cate',
name: 'Attrition',
orgName: 'Attrition',
charsetNr: 63,
length: 50,
type: 253,
flags: 128,
decimals: 0,
default: undefined,
zeroFill: false,
protocol41: true
}
]
반응형
'개발기초 > Node.js' 카테고리의 다른 글
[Node.js] VS Code에 개발환경을 만들어보자 (0) | 2024.11.01 |
---|