Object 内置对象

对象 DbConnection

数据库连接对象,用于建立和维护一个数据库连接会话。

继承关系

%0 object object toString() toJSON() DbConnection DbConnection type close() begin() commit() rollback() trans() execute() format() object->DbConnection MSSQL MSSQL DbConnection->MSSQL MySQL MySQL DbConnection->MySQL SQLite SQLite DbConnection->SQLite

成员属性

type

String, 查询当前连接数据库类型

1
readonly String DbConnection.type;

成员函数

close

关闭当前数据库连接

1
DbConnection.close() async;

begin

在当前数据库连接上启动一个事务

1
DbConnection.begin() async;

commit

提交当前数据库连接上的事务

1
DbConnection.commit() async;

rollback

回滚当前数据库连接上的事务

1
DbConnection.rollback() async;

trans

进入事务执行一个函数,并根据函数执行情况提交或者回滚

1
DbConnection.trans(Function func);

调用参数:

  • func: Function, 以事务方式执行的函数

func 执行有三种结果:

  • 函数正常返回,包括运行结束和主动 return,此时事务将自动提交
  • 函数返回 false,此时事务将回滚
  • 函数运行错误,事务自动回滚

execute

执行一个 sql 命令,并返回执行结果

1
NArray DbConnection.execute(String sql) async;

调用参数:

  • sql: String, 格式化字符串,可选参数用 ? 指定。例如:'SELECT FROM TEST WHERE [id]=?'

返回结果:

  • NArray, 返回包含结果记录的数组,如果请求是 UPDATE 或者 INSERT,返回结果还会包含 affected 和 insertId,mssql 不支持 insertId。

执行一个 sql 命令,并返回执行结果,可根据参数格式化字符串

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

调用参数:

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

返回结果:

  • NArray, 返回包含结果记录的数组,如果请求是 UPDATE 或者 INSERT,返回结果还会包含 affected 和 insertId,mssql 不支持 insertId。

format

格式化一个 sql 命令,并返回格式化结果

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

调用参数:

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

返回结果:

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

toString

返回对象的字符串表示,一般返回 "[Native Object]",对象可以根据自己的特性重新实现

1
String DbConnection.toString();

返回结果:

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

toJSON

返回对象的 JSON 格式表示,一般返回对象定义的可读属性集合

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

调用参数:

  • key: String, 未使用

返回结果:

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