RethinkDB
RethinkDB(使用ReQL 為query language)
https://www.rethinkdb.com/docs/quickstart/
brew update && brew install rethinkdb
windows直接下載後點擊exe,在前往
http://localhost:8080/
使用Node.js
npm install rethinkdb
r = require('rethinkdb');
var connection = null;
r.connect( {host: 'localhost', port: 28015}, function(err, conn) {
if (err) throw err;
connection = conn;
console.log(conn);
})
建立Table
r = require('rethinkdb');
r.connect( {host: 'localhost', port: 28015}, function(err, connection) {
if (err) throw err;
r.db('test').tableCreate('authors').run(connection, function(err, result) {
if (err) throw err;
console.log(JSON.stringify(result, null, 2));
});
});
generated_keys為主鍵的意思
取得資料
r = require('rethinkdb');
r.connect( {host: 'localhost', port: 28015}, function(err, connection) {
if (err) throw err;
r.table('authors').run(connection, function(err, cursor) {
if (err) throw err;
cursor.toArray(function(err, result) {
if (err) throw err;
console.log(JSON.stringify(result, null, 2));
});
});
});
體驗rethinkDB的realtime
r = require('rethinkdb');
r.connect( {host: 'localhost', port: 28015}, function(err, connection) {
if (err) throw err;
r.table('authors').changes().run(connection, function(err, cursor) {
if (err) throw err;
cursor.each(function(err, row) {
if (err) throw err;
console.log(JSON.stringify(row, null, 2));
});
});
});
執行後再開另一個CMD
檔案改成
r = require('rethinkdb');
r.connect( {host: 'localhost', port: 28015}, function(err, connection) {
if (err) throw err;
r.table('authors').update({type: "fictional"}).
run(connection, function(err, result) {
if (err) throw err;
console.log(JSON.stringify(result, null, 2));
});
});
在另一個CMD執行server,發現兩個CMD都有console出現
Last updated
Was this helpful?