Node.js ist ein JavaScript-Toolkit zum Schreiben von Hochleistungs-Webservern
Normalerweise beziehen wir bei der NodeJS-Entwicklung häufig den Betrieb von Datenbanken ein, insbesondere MySQL. Da es sich um die am weitesten verbreitete Open-Source-Datenbank handelt, ist es unsere erste Wahl. In diesem Artikel wird erläutert, wie die MySQL-Datenbank über NodeJS betrieben wird. Installieren Sie das MySQL-Modul in NodeJS. Wenn wir dafür sorgen müssen, dass NodeJS MySQL unterstützt, müssen wir das MySQL-Modul zur Systemunterstützungsbibliothek hinzufügen
Wenn Sie sich schnell über Node.js informieren möchten, empfiehlt Zansheng einen Blick auf node.js_guide.pdf – node.js-Entwicklungsleitfaden: Wenn Sie eine hochauflösende elektronische Version wünschen, senden Sie bitte eine Nachricht
Wenn Sie keine Nachricht hinterlassen möchten, kann ich Sie mit auf einen Flug nehmen! Direkt herunterladen
Node.js
Lassen Sie uns kurz die Funktionsweise von node.js vorstellen
Installieren Sie node-mysql
C-Code
$ npm install mysql
Testtabelle erstellen
//Datenbankname NodeSample
C-Code
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 ;
Mit Datenbank verbinden
Js-Code
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'); });
Datenbank öffnen
Js-Code
ClientConnectionReady = function(client) { client.query('USE NodeSample', function(error, results) { if(error) { console.log('ClientConnectionReady Error: ' + error.message); client.end(); return; } }); };
Vollständige Datenbankbetriebsprozeduren
Js-Code
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'); };