摘要:數據庫集成添加將數據庫連接到應用程序的功能只需在應用程序中為數據庫加載適當的驅動程序,本文檔簡要介紹了如何在應用程序中為數據庫系統添加和使用一些最流行的模塊。這些數據庫驅動程序是眾多可用的驅動程序,對于其他選項,請在網站上搜索。
數據庫集成
添加將數據庫連接到Express應用程序的功能只需在應用程序中為數據庫加載適當的Node.js驅動程序,本文檔簡要介紹了如何在Express應用程序中為數據庫系統添加和使用一些最流行的Node.js模塊。
這些數據庫驅動程序是眾多可用的驅動程序,對于其他選項,請在npm網站上搜索。
Cassandra模塊:cassandra-driver
安裝$ npm install cassandra-driver示例
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
模塊:couchnode
安裝$ npm install couchbase示例
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
模塊:nano
安裝$ npm install nano示例
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
模塊:levelup
安裝$ npm install level levelup leveldown示例
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
模塊:mysql
安裝$ npm install mysql示例
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
模塊:mongodb
安裝$ npm install mongodb示例(v2.*)
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) }) })示例(v3.*)
var MongoClient = require("mongodb").MongoClient MongoClient.connect("mongodb://localhost:27017/animals", function (err, client) { if (err) throw err var db = client.db("animals") db.collection("mammals").find().toArray(function (err, result) { if (err) throw err console.log(result) }) })
如果你想要MongoDB的對象模型驅動程序,請查看Mongoose。
Neo4j模塊:apoc
安裝$ npm install apoc示例
var apoc = require("apoc") apoc.query("match (n) return n").exec().then( function (response) { console.log(response) }, function (fail) { console.log(fail) } )Oracle
模塊:oracledb
安裝注意:請參閱安裝前提條件。
$ npm install oracledb示例
const oracledb = require("oracledb"); const config = { user: "PostgreSQL", // Update me password: " ", // Update me connectString: "localhost:1521/orcl" // Update me }; async function getEmployee(empId) { let conn; try { conn = await oracledb.getConnection(config); const result = await conn.execute( "select * from employees where employee_id = :id", [empId] ); console.log(result.rows[0]); } catch (err) { console.log("Ouch!", err); } finally { if (conn) { // conn assignment worked, need to close await conn.close(); } } } getEmployee(101);
模塊:pg-promise
安裝$ npm install pg-promise示例
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
模塊:redis
安裝$ npm install redis示例
var redis = require("redis") var client = 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
模塊:tedious
安裝$ npm install tedious示例
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
模塊:sqlite3
安裝$ npm install sqlite3示例
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
模塊:elasticsearch
安裝$ npm install elasticsearch示例
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) })
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/100482.html
摘要:單元測試一個合格的庫應該包含完整的單元測試。是的支持版,和是一樣的,它能夠直接運行為后綴的單元測試文件。在目錄下加入然后執行即可看到單元測試結果。 這篇文章主要是講述如何使用 TypeScript 編寫一個完善,包含測試、文檔、持續集成的庫,涵蓋了編寫整個庫所需要的技術和工具,主要涵蓋: 項目目錄骨架 TypeScript 配置 使用 jest 單元測試 使用 vuepress 編寫...
摘要:文檔基于的快速開放極簡主義的框架,是一個最小且靈活的應用程序框架,為和移動應用程序提供了一組強大的功能。借助無數的實用程序方法和中間件,你可以快速輕松地創建強大的。提供了一層輕薄的基本應用程序功能,而不會隱藏你熟悉和喜愛的功能。 Express 文檔 基于Node.js的快速、開放、極簡主義的Web框架,Express是一個最小且靈活的Node.js Web應用程序框架,為Web和移動...
摘要:菜鳥教程框架中文手冊入門目標使用搭建通過對數據增刪查改沒了純粹占行用的拜 后端API入門學習指北 了解一下一下概念. RESTful API標準] 所有的API都遵循[RESTful API標準]. 建議大家都簡單了解一下HTTP協議和RESTful API相關資料. 阮一峰:理解RESTful架構 阮一峰:RESTful API 設計指南 RESTful API指南 依賴注入 D...
閱讀 849·2023-04-25 21:21
閱讀 3231·2021-11-24 09:39
閱讀 3072·2021-09-02 15:41
閱讀 2001·2021-08-26 14:13
閱讀 1833·2019-08-30 11:18
閱讀 2775·2019-08-29 16:25
閱讀 510·2019-08-28 18:27
閱讀 1585·2019-08-28 18:17