Windows上基于NodeJS让Javascript和MySQL交互

来源:互联网 发布:抽烟喝酒 知乎 编辑:程序博客网 时间:2024/05/22 03:15

NodeJS官网:http://nodejs.org/

安装NodeJS:http://nodejs.org/#download

安装mysql driver:

cmd

npm install mysql

驱动会被安装在当前路径下,譬如:D:\node_modules\mysql

新建mysql.js文件,代码如下

Date.prototype.format = function(format) {var o = {"M+" : this.getMonth()+1,"d+" : this.getDate(),"h+" : this.getHours(),"m+" : this.getMinutes(),"s+" : this.getSeconds(),"q+" : Math.floor((this.getMonth()+3)/3),"S"  : this.getMilliseconds()};if(/(y+)/.test(format)) format = format.replace(RegExp.$1,(this.getFullYear()+"").substr(4 - RegExp.$1.length));for(var k in o)if(new RegExp("("+ k +")").test(format)) format = format.replace(RegExp.$1,RegExp.$1.length==1 ? o[k] :("00"+ o[k]).substr((""+ o[k]).length));return format;};var client = require('D:\\node_modules\\mysql').createClient({'host':'localhost','port':3306,'user':'root','password':'root'});NODEJS_DATABASE = 'test_db',NODEJS_TABLE = 'test_table';client.query('SET FOREIGN_KEY_CHECKS = 0');client.query('DROP DATABASE IF EXISTS ' + NODEJS_DATABASE);client.query('CREATE DATABASE ' + NODEJS_DATABASE, function(err) {if (err && err.number != client.ERROR_DB_CREATE_EXISTS) {throw err;}});client.query('USE ' + NODEJS_DATABASE);client.query('CREATE TABLE ' + NODEJS_TABLE +'(id INT(11) AUTO_INCREMENT, ' +'title VARCHAR(255), ' +'text TEXT, ' +'created DATETIME, ' +'PRIMARY KEY (id))');for(var i=0; i<100; i++) {var query = client.query('INSERT INTO ' + NODEJS_TABLE + ' ' +'SET title = ?, text = ?, created = ?',['nodejs', 'using nodejs to interact with mysql', (new Date()).format('yyyy-MM-dd hh:mm:ss')]); }client.query(  'SELECT * FROM ' + NODEJS_TABLE,  function selectCb(err, results, fields) {  if (err) { throw err; }console.log(results);  //console.log(fields);  client.end();  }  );

控制台下输入:

node mysql.js

即可。

关于其他驱动的测试,请参阅:http://cnodejs.org/blog/?p=404

其他资料:

http://club.cnodejs.org/

http://developer.51cto.com/art/201109/290443.htm