ដើម្បីជ្រើសរើសយកទិន្នន័យដ៏ជាក់លាក់ណាមួយ យើងចាបាច់ត្រូវប្រើបញ្ជា «SELECT» រួមជាមួយនឹងបញ្ជា «WHERE» នៃភាសា SQL ដោយធ្វើដូចខាងក្រោមនេះ៖
var mysql = require('mysql');
var con = mysql.createConnection({
host: "localhost",
user: "root",
password: "mypassword",
database: "mydb"
});
con.connect(function(err) {
if (err) throw err;
console.log("Connected!");
var sql = "SELECT * FROM customers WHERE ឈ្មោះ = 'សុខាវុធ'";
con.query(sql, function (err, result) {
if (err) throw err;
console.log(result);
});
});
នៅលើបន្ទាត់លេខ 13 ការសរសេរថា var sql = "SELECT * FROM customers WHERE ឈ្មោះ = 'សុខាវុធ'"; គឺជាការរៀបចំបញ្ជានៃភាសា SQL ក្នុងគោលបំណងស្រង់យកទិន្នន័យមួយស្ថិតនៅក្នុងក្រឡាឈរ «ឈ្មោះ» និងដែលជាពាក្យថា «សុខាវុធ» នៅក្នុងតារាង customers នៃមូលដ្ឋានទិន្នន័យ MySQL ។
មួយវិញទៀត បើសិនជាយើងស្រង់យកទិន្នន័យទាំងឡាយណាដែលជាពាក្យចាប់ផ្តើមដោយអក្សរណាមួយ យើងអាចប្រើប្រាស់សញ្ញា % ដោយធ្វើដូចខាងក្រោមនេះ៖
var mysql = require('mysql');
var con = mysql.createConnection({
host: "localhost",
user: "root",
password: "mypassword",
database: "mydb"
});
con.connect(function(err) {
if (err) throw err;
console.log("Connected!");
var sql = "SELECT * FROM customers WHERE ឈ្មោះ LIKE 'ស%'";
con.query(sql, function (err, result) {
if (err) throw err;
console.log(result);
});
});
នៅលើបន្ទាត់លេខ 13 ការសរសេរថា var sql = "SELECT * FROM customers WHERE ឈ្មោះ LIKE 'ស%'"; គឺជាការរៀបចំនូវបញ្ជាជាភាសា SQL មួយ ក្នុងគោលបំណងស្រង់យកបណ្តាទិន្នន័យទាំងឡាយណាដែលមាន «ឈ្មោះ» ចាប់ផ្តើមដោយអក្សរ «ស» នៅក្នុងតារាងទិន្នន័យ customers នៃមូលដ្ឋានទិន្នន័យ mydb ។
យ៉ាងណាម៉ិញ ក្នុងករណីដែលកម្មវិធី Node.js របស់យើងតំរូវអោយអ្នកប្រើប្រាស់សរសេរពាក្យផ្សេងៗដើម្បីស្រង់យកទិន្នន័យដោយខ្លួនគេផ្ទាល់ យើងចាំបាច់ត្រូវកែពាក្យទាំងនោះអោយមានលក្ខណៈជាពាក្យ «escaped» ក្នុងគោលបំណងបង្កានូវរាល់គោលបំណងអក្រក់ទាំងឡាយចង់បំផ្លាញមូលដ្ឋានទិន្នន័យ ដោយធ្វើដូចខាងក្រោមនេះ៖
var mysql = require('mysql');
var con = mysql.createConnection({
host: "localhost",
user: "root",
password: "mypassword",
database: "mydb"
});
con.connect(function(err) {
if (err) throw err;
console.log("Connected!");
var name = 'ន%';
var sql = "SELECT * FROM customers WHERE ឈ្មោះ LIKE " + mysql.escape(name);
con.query(sql, function (err, result) {
if (err) throw err;
console.log(result);
});
});
នៅលើបន្ទាត់លេខ 13 ការសរសេរថា var name = 'ន%'; គឺជាការជ្រើសរើសយកតួអក្សរ «ន» ជាតួអក្សរសំរាប់ស្រង់យកទិន្នន័យទាំងឡាយដែលចាប់ផ្តើមដោយតួអក្សរនេះ។
នៅលើបន្ទាត់លេខ 14 ការសរសេរថា mysql.escape(name) គឺជាការកែតំលៃនៃអថេរ name ដែលជាតួអក្សរ «ន%» អោយមានលក្ខណៈជា escaped ៕