3. 数据访问
金蝶云社区-云小爱
云小爱
2人赞赏了该文章 2,679次浏览 未经作者许可,禁止转载编辑于2014年09月27日 17:45:42
数据访问K/3 Cloud 平台提供丰富的数据访问接口,通常使用KSQL语法。如果确认不需要同时支持SQLServer、Oracle数据库,通过加方言标识直接用相应语法。命名空间Kingdee.BOS.App主要类及说明:
[tr][td=3%] [td=35%]Class[td=60%]Description
[tr][td=3%][td=35%]DBUtils [td=60%]数据访问工具类,提供各种数据访问方法。
[tr][td=3%][td=35%]KDTransactionScope [td=60%]提供基于TransactionScope的事务功能。
DBUtils数据访问工具,提供各种数据访问。DBUtils是App服务层组件,仅由App服务调用,表单插件中不能直接访问App服务,应该使用服务接口访问。Public Methods
[tr][td]Name[td]Description
[tr][td=29%]BatchDelete[td=69%]批量删除数据
[tr][td=29%]BatchUpdate[td=69%]批量更新数据
[tr][td=29%]BulkInserts[td=69%]批量插入数据
[tr][td=29%]Execute[td=69%]Overloaded. 执行SQL语句
[tr][td=29%]ExecuteBatch[td=69%]Overloaded. 批量执行SQL语句
[tr][td=29%]ExecuteBatchWithTime[td=69%]Overloaded. 提供带有超时机制设置的批量执行接口
[tr][td=29%]ExecuteDynamicObject[td=69%]执行指定的SQL并返回默认的一批使用DynamicObject集合描述的数据。
[tr][td=29%]ExecuteObject[td=69%]执行指定的SQL并返回默认的一批使用实体集合描述的数据。
[tr][td=29%]ExecuteReader[td=69%]Overloaded. 流方式读SQL查询结果。
[tr][td=29%]ExecuteScalar[td=69%]Overloaded. 返回数据的第一行第一列
[tr][td=29%]ExecuteWithTime[td=69%]执行指定sql语句,并引入超时机制(非特殊的大事务功能不要定制这个参数)
[tr][td=29%]IsExistTable[td=69%]检测帐套是否存在某个物理表
[tr][td=29%]IsExistTableField[td=69%]检测帐套是否存在某个物理表的某个字段列
[tr][td=29%]IsExistView[td=69%]判断视图是否存在
说明:单个查询语句建议使用ExecuteReader方法,更新和删除语句以及DDL语句用Execute方法。 业务对象数据获取建议使用ExecuteDynamicObject方法,该方法直接返回DynamicObject对象直接使用,无需做字段类型转换以及空值判断。 批量执行语句建议使用BulkInserts、BatchDelete、BatchUpdate、ExecuteReader增删改查。特殊批量执行可以用ExecuteBatch方法,方法的参数支持参数化SQL,该方法在SQL语句较多时有较好的性能。 执行某个SQL并获取第一行第一列的值使用ExecuteScalar方法,该方法允许调用前设置默认值,当查询返回为空的时候以默认值替代返回的空值。