Windows上基于NodeJS让Javascript和MySQL交互

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


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值