1. Select With a Filter
테이블에서 레코드를 선택할 때, "WHERE" 구문을 사용하여 레코드를 필터링 할 수 있다.
var mysql = require('mysql');
var con = createConntection({
host : "localhost",
user : "yourname",
password : "yourpassword",
database : "mydb"
});
con.connect(function(err) {
if(err) throw err;
con.query("SELECT * FROM customers WHERE address = 'Park Lane 38'", function (err, result) {
if(err) throw err;
console.log(result);
});
});
실행하면 결과는 다음과 같다.
[
{ id: 11, name: 'Ben', address: 'Park Lane 38'}
]
2. Wildcard Characters
글자나 문구를 가지고 시작, 포함, 끝 부분을 포함하는 "%" 를 사용할 수 있다.
3. Escaping Query Values
사용자의 의해 제공되어지는 쿼리 값이 변할 때, "escape"를 사용하여, SQL 인젝션을 막을 수 있다.
var adr = 'Mountain 21';
var sql = 'SELECT * FROM customers WHERE address = ' + mysql.escape(adr);
con.query(sql, function (err, result) {
if(err) throw err;
console.log(result);
});
"?"를 사용할 수도 있는데, 이럴 경우, query 메소드의 2번쨰 파라미터에 쓴다.
var adr = 'Mountain 21';
var sql = 'SELECT * FROM customers WHERE address = ?';
con.query(sql, [adr], function (err, result) {
if(err) throw err;
console.log(result);
});
만일에 여러개가 필요하다면, 여러개를 배열형태로 열거한다.
var adr = 'Mountain 21';
var sql = 'SELECT * FROM customers WHERE name =? OR address = ?';
con.query(sql, [name, adr], function (err, result) {
if(err) throw err;
console.log(result);
});
'Front-End > - Node.js' 카테고리의 다른 글
Node.js(MySQL) - Chapter 05. Delete (0) | 2019.10.08 |
---|---|
Node.js(MySQL) - Chapter 05. Order By (0) | 2019.10.08 |
Node.js(MySQL) - Chapter 04. Select From (0) | 2019.10.08 |
Node.js(MySQL) - Chapter 03. Insert (0) | 2019.10.08 |
Node.js(MySQL) - Chapter 02. Create (0) | 2019.10.08 |