模組db
資料庫存取模組
基礎模組。可用於建立和操作資料庫資源,引用方式:
1
2var db = require('db');
var conn = db.open('rng://user:pass@host:port/dbname');
透過指定資料庫引擎,可以建立不同的資料庫連結。fibjs 內建兩個sql 引擎:sqlite 和mysql,同時也支援透過ODBC/unixODBC 連接更多資料庫,基於ODBC/unixODBC,fibjs 建構了與mssql 和PostgreSQL 的驅動程式。為了使用ODBC/unixODBC,需要安裝對應的驅動,在posix 下使用mssql 需要安裝freetds,使用PostgreSQL 需要安裝psqlodbc。正常情況下驅動安裝成功即可直接使用,無需進一步配置。
靜態函數
open
開啟一個資料庫,此方法為通用入口,根據提供的connString 不同呼叫不同的引擎
1static object db.open(String connString) async;
呼叫參數:
- connString: String, 資料庫描述,如:mysql://user:pass@host/db
回傳結果:
- object, 傳回資料庫連線對象
openMySQL
開啟一個mysql 資料庫
1static MySQL db.openMySQL(String connString) async;
呼叫參數:
- connString: String, 資料庫描述,如:mysql://user:pass@host/db
回傳結果:
- MySQL, 傳回資料庫連線對象
openSQLite
開啟一個sqlite 資料庫
1static SQLite db.openSQLite(String connString) async;
呼叫參數:
- connString: String, 資料庫描述,如:sqlite:test.db 或test.db
回傳結果:
- SQLite, 傳回資料庫連線對象
openOdbc
開啟一個sqlite 資料庫
1static DbConnection db.openOdbc(String connString) async;
呼叫參數:
- connString: String, 資料庫描述,如:odbc://user:pass@host/db?driver=PostgreSQL%20ANSI
回傳結果:
- DbConnection, 傳回資料庫連線對象
openMSSQL
開啟一個mssql 資料庫
1static DbConnection db.openMSSQL(String connString) async;
呼叫參數:
- connString: String, 資料庫描述,如:mssql://user:pass@host/db
回傳結果:
- DbConnection, 傳回資料庫連線對象
為了建立與mssql 的連接,在posix 下必須安裝freetds 的odbc 驅動,也可以透過指定驅動來使用微軟的mssql 驅動,指定驅動的方式,是在url後來增加?driver=msodbcsql17[.so/.dylib] 的選項。
openPSQL
開啟一個PostgresSQL 資料庫
1static DbConnection db.openPSQL(String connString) async;
呼叫參數:
- connString: String, 資料庫描述,如:psql://user:pass@host/db
回傳結果:
- DbConnection, 傳回資料庫連線對象
為了建立與PostgresSQL 的連接,必須安裝PostgresSQL 的odbc 驅動程式。
openLevelDB
打開一個leveldb 資料庫
1static LevelDB db.openLevelDB(String connString) async;
呼叫參數:
- connString: String, 資料庫描述,如:level:test.db 或test.db
回傳結果:
- LevelDB, 傳回資料庫對象
openRedis
打開一個Redis資料庫
1static Redis db.openRedis(String connString) async;
呼叫參數:
- connString: String, 資料庫描述,如:redis://server:port 或"server"
回傳結果:
- Redis, 傳回資料庫連線對象