zoukankan      html  css  js  c++  java
  • Nodejs连接12种数据库例子集合

     

    原文:https://segmentfault.com/a/1190000008753686

    Cassandra

    Module: cassandra-driver Installation

    $ npm install cassandra-driver

    Example

    var cassandra = require('cassandra-driver')
    var client = new cassandra.Client({ contactPoints: ['localhost'] })
    
    client.execute('select key from system.local', function (err, result) {
      if (err) throw err
      console.log(result.rows[0])
    })

    Couchbase

    Module: couchnode Installation

    $ npm install couchbase

    Example

    var couchbase = require('couchbase')
    var bucket = (new couchbase.Cluster('http://localhost:8091')).openBucket('bucketName')
    
    // add a document to a bucket
    bucket.insert('document-key', { name: 'Matt', shoeSize: 13 }, function (err, result) {
      if (err) {
        console.log(err)
      } else {
        console.log(result)
      }
    })
    
    // get all documents with shoe size 13
    var n1ql = 'SELECT d.* FROM `bucketName` d WHERE shoeSize = $1'
    var query = N1qlQuery.fromString(n1ql)
    bucket.query(query, [13], function (err, result) {
      if (err) {
        console.log(err)
      } else {
        console.log(result)
      }
    })

    CouchDB

    Module: nano Installation

    $ npm install nano

    Example

    var nano = require('nano')('http://localhost:5984')
    nano.db.create('books')
    var books = nano.db.use('books')
    
    // Insert a book document in the books database
    books.insert({ name: 'The Art of war' }, null, function (err, body) {
      if (err) {
        console.log(err)
      } else {
        console.log(body)
      }
    })
    
    // Get a list of all books
    books.list(function (err, body) {
      if (err) {
        console.log(err)
      } else {
        console.log(body.rows)
      }
    })

    LevelDB

    Module: levelup Installation

    $ npm install level levelup leveldown

    Example

    var levelup = require('levelup')
    var db = levelup('./mydb')
    
    db.put('name', 'LevelUP', function (err) {
      if (err) return console.log('Ooops!', err)
    
      db.get('name', function (err, value) {
        if (err) return console.log('Ooops!', err)
    
        console.log('name=' + value)
      })
    })

    MySQL

    Module: mysql Installation

    $ npm install mysql

    Example

    var mysql = require('mysql')
    var connection = mysql.createConnection({
      host     : 'localhost',
      user     : 'dbuser',
      password : 's3kreee7',
      database : 'my_db'
    });
    
    connection.connect()
    
    connection.query('SELECT 1 + 1 AS solution', function (err, rows, fields) {
      if (err) throw err
    
      console.log('The solution is: ', rows[0].solution)
    })
    
    connection.end()

    MongoDB

    Module: mongodb Installation

    $ npm install mongodb

    Example

    var MongoClient = require('mongodb').MongoClient
    
    MongoClient.connect('mongodb://localhost:27017/animals', function (err, db) {
      if (err) throw err
    
      db.collection('mammals').find().toArray(function (err, result) {
        if (err) throw err
    
        console.log(result)
      })
    })

    If you want an object model driver for MongoDB, look at Mongoose.

    Neo4j

    Module: apoc Installation

    $ npm install apoc

    Example

    var apoc = require('apoc')
    
    apoc.query('match (n) return n').exec().then(
      function (response) {
        console.log(response)
      },
      function (fail) {
        console.log(fail)
      }
    )

    PostgreSQL

    Module: pg-promise Installation

    $ npm install pg-promise

    Example

    var pgp = require('pg-promise')(/*options*/)
    var db = pgp('postgres://username:password@host:port/database')
    
    db.one('SELECT $1 AS value', 123)
      .then(function (data) {
        console.log('DATA:', data.value)
      })
      .catch(function (error) {
        console.log('ERROR:', error)
      })

    Redis

    Module: redis Installation

    $ npm install redis

    Example

    var client = require('redis').createClient()
    
    client.on('error', function (err) {
      console.log('Error ' + err)
    })
    
    client.set('string key', 'string val', redis.print)
    client.hset('hash key', 'hashtest 1', 'some value', redis.print)
    client.hset(['hash key', 'hashtest 2', 'some other value'], redis.print)
    
    client.hkeys('hash key', function (err, replies) {
      console.log(replies.length + ' replies:')
    
      replies.forEach(function (reply, i) {
        console.log('    ' + i + ': ' + reply)
      })
    
      client.quit()
    })

    SQL Server

    Module: tedious Installation

    $ npm install tedious

    Example

    var Connection = require('tedious').Connection;
    var Request = require('tedious').Request;
    
    var config = {
      userName: 'your_username', // update me
      password: 'your_password', // update me
      server: 'localhost'
    }
    
    var connection = new Connection(config);
    
    connection.on('connect', function(err) {
      if (err) {
        console.log(err);
      } else {
        executeStatement();
      }
    });
    
    function executeStatement() {
      request = new Request("select 123, 'hello world'", function(err, rowCount) {
        if (err) {
          console.log(err);
        } else {
          console.log(rowCount + ' rows');
        }
        connection.close();
      });
    
      request.on('row', function(columns) {
        columns.forEach(function(column) {
          if (column.value === null) {
            console.log('NULL');
          } else {
            console.log(column.value);
          }
        });
      });
    
      connection.execSql(request);
    }

    SQLite

    Module: sqlite3 Installation

    $ npm install sqlite3

    Example

    var sqlite3 = require('sqlite3').verbose()
    var db = new sqlite3.Database(':memory:')
    
    db.serialize(function () {
      db.run('CREATE TABLE lorem (info TEXT)')
      var stmt = db.prepare('INSERT INTO lorem VALUES (?)')
    
      for (var i = 0; i < 10; i++) {
        stmt.run('Ipsum ' + i)
      }
    
      stmt.finalize()
    
      db.each('SELECT rowid AS id, info FROM lorem', function (err, row) {
        console.log(row.id + ': ' + row.info)
      })
    })
    
    db.close()

    ElasticSearch

    Module: elasticsearch Installation

    $ npm install elasticsearch

    Example

    var elasticsearch = require('elasticsearch')
    var client = elasticsearch.Client({
      host: 'localhost:9200'
    })
    
    client.search({
      index: 'books',
      type: 'book',
      body: {
        query: {
          multi_match: {
            query: 'express js',
            fields: ['title', 'description']
          }
        }
      }
    }).then(function (response) {
      var hits = response.hits.hits
    }, function (error) {
      console.trace(error.message)
    })
  • 相关阅读:
    web性能优化
    5、Git:使用码云(Gitee)
    4、Git:文件操作
    3、Git:基本理论 和 项目搭建
    2、Git:环境配置
    1、Git:版本控制 和 Git历史
    18、各种锁的理解(非公平锁和公平锁、可重入锁、自旋锁、死锁)
    17、原子引用(乐观锁)
    16、深入理解CAS(重点)
    15、彻底玩转单例模式
  • 原文地址:https://www.cnblogs.com/shaozhu520/p/10700128.html
Copyright © 2011-2022 走看看