목차
Table에 레코드 1개 넣기
Table에 레코드 다수 넣기
result 객체
삽입된 ID 가져오기
Table에 레코드 1개 넣기
1. C:\User\사용자명\hz.js 생성.
var mysql = require('mysql');
var con = mysql.createConnection({
host: "localhost",
user: "root",
password: "autoset",
database: "hz "
});
con.connect(function(err) {
if (err) throw err;
console.log("Connected!");
var sql = "INSERT INTO hz_member (mb_name , mb_level ) VALUES ('homzzang', '10')";
con.query(sql, function (err, result) {
if (err) throw err;
console.log("1 record inserted");
});
});
2. CMD 모드에서 아래 명령어 입력해 시작 설정.
C:\User\사용자명>node hz.js
※ 아래 메세지 뜨면 레코드 입력 성공.
1 record inserted
Table에 레코드 다수 넣기
둘 이상의 레코드를 삽입하려면 값을 포함하는 배열을 만든 후,
SQL 구문의 값 자리에 물음표 (? ) 삽입하면 값 배열로 대체됨.
INSERT INTO hz_member (mb_name, mb_level) VALUES ?
1. C:\User\사용자명\hz.js 생성.
var mysql = require('mysql');
var con = mysql.createConnection({
host: "localhost",
user: "root",
password: "autoset",
database: "hz "
});
con.connect(function(err) {
if (err) throw err;
console.log("Connected!");
var sql = "INSERT INTO hz_member (mb_name , mb_level ) VALUES ?";
var values = [
['AAA', '1'],
['BBB', '2'],
['CCC', '2'],
['DDD', '3'],
['EEE', '3'],
['FFF', '3'],
['GGG', '4'],
['HHH', '4'],
['III', '4'],
['JJJ', '4'],
['KKK', '5'],
['LLL', '5'],
['MMM', '5'],
['NNN', '5']
];
con.query(sql, [values], function (err, result) {
if (err) throw err;
console.log("Number of records inserted: " + result.affectedRows );
});
});
2. CMD 모드에서 아래 명령어 입력해 시작 설정.
C:\User\사용자명>node hz.js
※ 아래 메세지 뜨면 레코드 입력 성공.
Connected!
Number of records inserted: 14
result 객체
1.
쿼리를 실행하면 result 객체가 반환됨.
result 객체 : 쿼리가 테이블에 미치는 영향 정보 내장.
2.
result 객체 안의 각 속성의 속성값 접근 방법
result. property
(예) result.affectedRows (반영 개수)
3.
콘솔에 출력하려면 JS함수 반환문 안에 아래 명령어 입력.
console.log(result.property )
(예) console.log(result.affectedRows)
주의: console.log()는 JS 명령어라, CMD 모드에 바로 입력 불가.
※ 위의 예 경우, result 객체에 아래 정보 내장.
{
fieldCount: 0,
affectedRows: 14,
insertId: 0,
serverStatus: 2,
warningCount: 0,
message: ''Records:14 Duplicated: 0 Warnings: 0',
protocol41: true,
changedRows: 0
}
삽입된 ID 가져오기
자동 증가 ID 필드 있는 테이블 경우 result 객체에 요청해,
방금 삽입한 행의 ID (= result.insertId ) 가져오기 가능함.
참고 : 삽입된 ID 얻으려면, 오직 하나의 행만 삽입해야 함.
※ 위 예제처럼, 레코드 행이 여럿이면 insertId 값이 0 찍힘.
1. C:\User\사용자명\hz.js 생성.
var mysql = require('mysql');
var con = mysql.createConnection({
host: "localhost",
user: "root",
password: "autoset",
database: "hz "
});
con.connect(function(err) {
if (err) throw err;
var sql = "INSERT INTO hz_member (mb_name , mb_level ) VALUES ('OOO', '5')";
con.query(sql, function (err, result) {
if (err) throw err;
console.log("1 record inserted, ID: " + result.insertId );
});
});
2. CMD 모드에서 아래 명령어 입력해 시작 설정.
C:\User\사용자명>node hz.js
※ 아래 메세지 뜨면 ID 가져오기 성공.
1 record inserted, ID: 16
※ 16 = (맨 처음 1개 + 중간에 14개 + 방금 1개)
주소 복사
랜덤 이동
최신댓글