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'); };