读书人

Node.js 联接 MySQL 并进行数据库操作

发布时间: 2012-10-08 19:54:56 作者: rapoo

Node.js 连接 MySQL 并进行数据库操作

Node.js是一套用来编写高性能网络服务器的JavaScript工具包

?

代码片段(6)[代码] 安装 node-mysqlview source print?1$ npm install mysql[代码] 创建测试表view source print?1//数据库名 NodeSample 2??3CREATE TABLE `NodeSample`.`MyTable` ( 4??`id` INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY , 5??`firstname` VARCHAR( 20 ) NOT NULL , 6??`lastname` VARCHAR( 20 ) NOT NULL , 7??`message` TEXT NOT NULL8) ENGINE = MYISAM ;[代码] 连接数据库view source print?01var sys = require('sys'); 02???03var Client = require('mysql').Client; 04var client = new Client(); 05???06client.user = 'someuser'; 07client.password = 'password'; 08???09client.connect(function(error, results) { 10??if(error) { 11????console.log('Connection Error: ' + error.message); 12????return; 13??} 14??console.log('Connected to MySQL'); 15});[代码] 打开数据库view source print?01ClientConnectionReady = function(client) 02{ 03????client.query('USE NodeSample', function(error, results) { 04????????if(error) { 05????????????console.log('ClientConnectionReady Error: ' + error.message); 06????????????client.end(); 07????????????return; 08????????} 09????}); 10};[代码] 完成数据库操作程序view source print?01var sys = require('sys'); 02???03var Client = require('mysql').Client; 04var client = new Client(); 05???06client.user = 'someuser'; 07client.password = 'password'; 08???09console.log('Connecting to MySQL...'); 10???11client.connect(function(error, results) { 12??if(error) { 13????console.log('Connection Error: ' + error.message); 14????return; 15??} 16??console.log('Connected to MySQL'); 17??ClientConnectionReady(client); 18}); 19???20ClientConnectionReady = function(client) 21{ 22????client.query('USE NodeSample', function(error, results) { 23????????if(error) { 24????????????console.log('ClientConnectionReady Error: ' + error.message); 25????????????client.end(); 26????????????return; 27????????} 28????????ClientReady(client); 29????}); 30}; 31???32ClientReady = function(client) 33{ 34??var values = ['Chad', 'Lung', 'Hello World']; 35??client.query('INSERT INTO MyTable SET firstname = ?, lastname = ? , message = ?', values, 36????function(error, results) { 37??????if(error) { 38????????console.log("ClientReady Error: " + error.message); 39????????client.end(); 40????????return; 41??????} 42??????console.log('Inserted: ' + results.affectedRows + ' row.'); 43??????console.log('Id inserted: ' + results.insertId); 44????} 45??); 46??GetData(client); 47} 48???49GetData = function(client) 50{ 51??client.query( 52????'SELECT * FROM MyTable', 53????function selectCb(error, results, fields) { 54??????if (error) { 55??????????console.log('GetData Error: ' + error.message); 56??????????client.end(); 57??????????return; 58??????} 59??????// Uncomment these if you want lots of feedback 60??????//console.log('Results:'); 61??????//console.log(results); 62??????//console.log('Field metadata:'); 63??????//console.log(fields); 64??????//console.log(sys.inspect(results)); 65???66??????if(results.length > 0) 67??????{ 68????????var firstResult = results[0]; 69????????console.log('First Name: ' + firstResult['firstname']); 70????????console.log('Last Name: ' + firstResult['lastname']); 71????????console.log('Message: ' + firstResult['message']); 72??????} 73??}); 74???75??client.end(); 76??console.log('Connection closed'); 77};[图片] 程序执行结果

读书人网 >其他数据库

热点推荐