Rumah  >  Artikel  >  hujung hadapan web  >  Panduan Pembangunan node.js – Node.js menyambung ke MySQL dan melaksanakan operasi pangkalan data_node.js

Panduan Pembangunan node.js – Node.js menyambung ke MySQL dan melaksanakan operasi pangkalan data_node.js

WBOY
WBOYasal
2016-05-16 16:40:581591semak imbas

Node.js ialah kit alat JavaScript untuk menulis pelayan web berprestasi tinggi

Biasanya dalam pembangunan NodeJS, kami sering melibatkan pangkalan data operasi, terutamanya MySQL Sebagai pangkalan data sumber terbuka yang paling banyak digunakan, artikel ini akan memperkenalkan cara mengendalikan pangkalan data MySQL melalui NodeJS. Pasang modul MySQL ke dalam NodeJS Jika kita perlu membuat NodeJS menyokong MySQL, kita perlu menambah modul MySQL ke perpustakaan sokongan sistem
.
Jika anda ingin mengetahui dengan cepat tentang Node.js, Zansheng mengesyorkan anda melihat node.js_guide.pdf — Panduan Pembangunan node.js: Jika anda mahukan versi elektronik definisi tinggi, sila hantar mesej

Jika anda tidak mahu meninggalkan mesej, saya boleh membawa anda menaiki penerbangan! Muat turun terus

Node.js
Mari perkenalkan secara ringkas operasi node.js
Pasang node-mysql
Kod C

$ npm install mysql 


Cipta jadual ujian
//Nama pangkalan data NodeSample
Kod C

CREATE TABLE `NodeSample`.`MyTable` ( 
`id` INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY , 
`firstname` VARCHAR( 20 ) NOT NULL , 
`lastname` VARCHAR( 20 ) NOT NULL , 
`message` TEXT NOT NULL 
) ENGINE = MYISAM ; 


Sambung ke pangkalan data
Kod Js

var sys = require('sys'); 
 
var Client = require('mysql').Client; 
var client = new Client(); 
 
client.user = 'someuser'; 
client.password = 'password'; 
 
client.connect(function(error, results) { 
if(error) { 
console.log('Connection Error: ' + error.message); 
return; 
} 
console.log('Connected to MySQL'); 
}); 


Buka pangkalan data
Kod Js

ClientConnectionReady = function(client) 
{ 
client.query('USE NodeSample', function(error, results) { 
if(error) { 
console.log('ClientConnectionReady Error: ' + error.message); 
client.end(); 
return; 
} 
}); 
}; 


Lengkapkan prosedur operasi pangkalan data
Kod Js

var sys = require('sys'); 
 
var Client = require('mysql').Client; 
var client = new Client(); 
 
client.user = 'someuser'; 
client.password = 'password'; 
 
console.log('Connecting to MySQL...'); 
 
client.connect(function(error, results) { 
if(error) { 
console.log('Connection Error: ' + error.message); 
return; 
} 
console.log('Connected to MySQL'); 
ClientConnectionReady(client); 
}); 
 
ClientConnectionReady = function(client) 
{ 
client.query('USE NodeSample', function(error, results) { 
if(error) { 
console.log('ClientConnectionReady Error: ' + error.message); 
client.end(); 
return; 
} 
ClientReady(client); 
}); 
}; 
 
ClientReady = function(client) 
{ 
var values = ['Chad', 'Lung', 'Hello World']; 
client.query('INSERT INTO MyTable SET firstname = ?, lastname = ? , message = ?', values, 
function(error, results) { 
if(error) { 
console.log("ClientReady Error: " + error.message); 
client.end(); 
return; 
} 
console.log('Inserted: ' + results.affectedRows + ' row.'); 
console.log('Id inserted: ' + results.insertId); 
} 
); 
GetData(client); 
} 
 
GetData = function(client) 
{ 
client.query( 
'SELECT * FROM MyTable', 
function selectCb(error, results, fields) { 
if (error) { 
console.log('GetData Error: ' + error.message); 
client.end(); 
return; 
} 
// Uncomment these if you want lots of feedback 
//console.log('Results:'); 
//console.log(results); 
//console.log('Field metadata:'); 
//console.log(fields); 
//console.log(sys.inspect(results)); 
 
if(results.length > 0) 
{ 
var firstResult = results[0]; 
console.log('First Name: ' + firstResult['firstname']); 
console.log('Last Name: ' + firstResult['lastname']); 
console.log('Message: ' + firstResult['message']); 
} 
}); 
 
client.end(); 
console.log('Connection closed'); 
}; 

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn