Object 內置對象

對象Odbc

Odbc 數據庫連接對象

繼承關係

#lineWidth: 1.5 #font: Helvetica,sans-Serif #fontSize: 10 #leading: 1.6 #.this: fill=lightgray #.class: fill=white [<class>object|toString();toJSON()] [<class>DbConnection|type|close();use();begin();commit();rollback();trans();execute();createTable();dropTable();createIndex();dropIndex();insert();find();count();update();remove();format()] [<this>Odbc|codec] [object] <:- [DbConnection] [DbConnection] <:- [Odbc] DbConnection type close() use() begin() commit() rollback() trans() execute() createTable() dropTable() createIndex() dropIndex() insert() find() count() update() remove() format() object toString() toJSON() Odbc codec

成員屬性

codec

String, 查詢和設置數據庫編碼,缺省"utf8"

1
String Odbc.codec;

type

String, 查詢當前連接數據庫類型

1
readonly String Odbc.type;

成員函數

close

關閉當前數據庫連接

1
Odbc.close() async;

use

選擇當前數據庫連接的缺省數據庫

1
Odbc.use(String dbName) async;

調用參數:

  • dbName: String, 指定數據庫名

begin

在當前數據庫連接上啟動一個事務

1
Odbc.begin(String point = "") async;

調用參數:

  • point: String, 指定事務的名稱,缺省不指定

commit

提交當前數據庫連接上的事務

1
Odbc.commit(String point = "") async;

調用參數:

  • point: String, 指定事務的名稱,缺省不指定

rollback

回滾當前數據庫連接上的事務

1
Odbc.rollback(String point = "") async;

調用參數:

  • point: String, 指定事務的名稱,缺省不指定

trans

進入事務執行一個函數,並根據函數執行情況提交或者回滾

1
Boolean Odbc.trans(Function func);

調用參數:

  • func: Function, 以事務方式執行的函數

返回結果:

  • Boolean, 返回事務是否提交,正常commit 時返回true, rollback 時返回false,如果事務出錯則拋出錯誤

func 執行有三種結果:

  • 函數正常返回,包括運行結束和主動return,此時事務將自動提交
  • 函數返回false,此時事務將回滾
  • 函數運行錯誤,事務自動回滾

進入事務執行一個函數,並根據函數執行情況提交或者回滾

1 2
Boolean Odbc.trans(String point, Function func);

調用參數:

  • point: String, 指定事務的名稱
  • func: Function, 以事務方式執行的函數

返回結果:

  • Boolean, 返回事務是否提交,正常commit 時返回true, rollback 時返回false,如果事務出錯則拋出錯誤

func 執行有三種結果:

  • 函數正常返回,包括運行結束和主動return,此時事務將自動提交
  • 函數返回false,此時事務將回滾
  • 函數運行錯誤,事務自動回滾

execute

執行一個sql 命令,並返回執行結果

1
NArray Odbc.execute(String sql) async;

調用參數:

  • sql: String, 字符串

返回結果:

  • NArray, 返回包含結果記錄的數組,如果請求是UPDATE 或者INSERT,返回結果還會包含affected 和insertId,mssql 不支持insertId。

執行一個sql 命令,並返回執行結果,可根據參數格式化字符串

1 2
NArray Odbc.execute(String sql, ...args) async;

調用參數:

  • sql: String, 格式化字符串,可選參數用? 指定。例如:'SELECT FROM TEST WHERE [id]=?'
  • args: ..., 可選參數列表

返回結果:

  • NArray, 返回包含結果記錄的數組,如果請求是UPDATE 或者INSERT,返回結果還會包含affected 和insertId,mssql 不支持insertId。

createTable

創建數據表

1
Odbc.createTable(Object opts) async;

調用參數:

  • opts: Object, 參數列表

dropTable

刪除數據表

1
Odbc.dropTable(Object opts) async;

調用參數:

  • opts: Object, 參數列表

createIndex

創建數據表索引

1
Odbc.createIndex(Object opts) async;

調用參數:

  • opts: Object, 參數列表

dropIndex

刪除數據表索引

1
Odbc.dropIndex(Object opts) async;

調用參數:

  • opts: Object, 參數列表

insert

插入新記錄

1
Number Odbc.insert(Object opts) async;

調用參數:

  • opts: Object, 參數列表

返回結果:

  • Number, 返回包含插入的id,如果引擎不支持則返回 0

find

根據指定的條件查詢數據

1
NArray Odbc.find(Object opts) async;

調用參數:

  • opts: Object, 參數列表

返回結果:

  • NArray, 返回包含結果記錄

count

根據指定的條件統計數據記錄數

1
Integer Odbc.count(Object opts) async;

調用參數:

  • opts: Object, 參數列表

返回結果:

  • Integer, 返回包含結果記錄數

update

根據指定的條件更新數據

1
Integer Odbc.update(Object opts) async;

調用參數:

  • opts: Object, 參數列表

返回結果:

  • Integer, 返回包含更新的記錄數

remove

根據指定的條件刪除數據

1
Integer Odbc.remove(Object opts) async;

調用參數:

  • opts: Object, 可選參數列表

返回結果:

  • Integer, 返回包含更新的記錄數

format

格式化一個sql 命令,並返回格式化結果

1 2
String Odbc.format(String method, Object opts);

調用參數:

  • method: String, 指定請求的方法
  • opts: Object, 可選參數列表

返回結果:

  • String, 返回格式化之後的sql 命令

格式化一個sql 命令,並返回格式化結果

1 2
String Odbc.format(String sql, ...args);

調用參數:

  • sql: String, 格式化字符串,可選參數用? 指定。例如:'SELECT FROM TEST WHERE [id]=?'
  • args: ..., 可選參數列表

返回結果:

  • String, 返回格式化之後的sql 命令

toString

返回對象的字符串表示,一般返回"[Native Object]",對象可以根據自己的特性重新實現

1
String Odbc.toString();

返回結果:

  • String, 返回對象的字符串表示

toJSON

返回對象的JSON 格式表示,一般返回對象定義的可讀屬性集合

1
Value Odbc.toJSON(String key = "");

調用參數:

  • key: String, 未使用

返回結果:

  • Value, 返回包含可JSON 序列化的值