最近在学习node创建项目,因为一直在用像mysql这样的结构型数据库,想学点新的东西,所以就把数据库换成了redis。redis是非关系型数据库。那关系型数据库跟非关系型数据库有什么区别呢?简单地说,就是一个有表的概念,一个没有。具体的区别自行Google吧。这里我主要介绍一下node.js与redis之间建立连接的过程,就是说如何早node;里面操作redis‘数据库。因此,默认你已经装好这两个软件了。
第一步,我们需要打开redis的服务器.打开命令行,切换到redis安装目录,输入命令:redis-server.exe redis.conf
当然如果你已经配置好了环境变量,那就直接输入redis-server 就好啦!
接着,我们需要下载redis的node客户端。我们可以使用redis的客户端进行测试,但是在node程序里面想要操作的话,就必须下载node的客户端。这里我们通过npm方式安装。
首先,我们新建一个node的代码空间。打开命令行, 切换至该目录下,初始化npm仓库:
npm init
这时候需要按照提示输入相应的信息就行。
完成之后,就会发现文件夹之下出现了package.json文件。原来刚才的操作就是初始化了package.json里面的内容。现在我们打开package文件,在里面添加三方依赖:
"dependencies":{"redis":"0.7.1"}
保存之后再次运行命令:
npm install
这样我们就会发现目录下面多了一个node_module文件夹,里面有一个redis的文件夹,这样,redis的依赖就安装好啦!
接着,我们需要使用redis的客户端来实现操作数据库。其实,redis客户端就是给我们生成了一系列的操作数据库的方法,都是封装好的,直接调用就好。
例如:
var redis = require('redis') var client = redis.createClient(); client.hmset("host","nation","china","home","anhui","age","20");
这样,就能在数据库里面添加一条数据,不信的话我们输出来看看。加上一端代码:
client.hgetall("host",function(err,obj){
console.log(obj); });
输出:
看看,这样我们就能得到刚才插入的数据了。如果对redis操作语言熟悉的话,我们会发现,其实这些方法的的名称跟redis操作语句是一样的。不需要返回值的就不必带着回调函数了,如果需要返回数据就需要加上回调函数,输出数据。(我试了很多函数,基本上都是这样,如果有例外,欢迎指正!)
好了,基本的操作数据库的流程就这样了!