DbHelper.sct地址:
http://www.fengyun.org/Down/DbHelper.sct
相关说明:
对象创建方法:
For VBS:
set DH = GetObject("script:
http://www.fengyun.org/Down/DbHelper.sct")
For JS:
var DH = GetObject("script:
http://www.fengyun.org/Down/DbHelper.sct");
建议本地调用,例如:
set DH = GetObject("script:" & Server.MapPath("DbHelper.sct"))
如果服务器上已注册该组件,则可使用:
set DH = Server.CreateObject("Rimifon.DataHelper")
属性列表:
ConnStr: 设置/读取连接字符串
方法列表:
SetDB(dbname, dbtype, user, pass, ip, port)
例如:DH.SetDB("test.mdb", "access"),也可直接设置DH.ConnStr。
RecordSet(/* connstr */)
例如:Set Rs = DH.RecordSet()。参数connstr可以省略。当一次执行多次SQL语句时建议使用同一个Rs对象,以减少数据库打开关闭次数。
NonQuery(sql /* , Rs */)
执行SQL命令并返回受影响的行数,参数Rs可省略。
Scalar(sql /* , Rs */)
返回第一行第一列数据,参数Rs可省略。
DataSet(sql /* , /* pagesize, pagenum , */ Rs */)
执行返回指定页数据的JS数组(分页执行)。(/* */内的参数可省略)
例如:Set Ds = DH.DataSet(sql, Rs) '获取全部数据,未分页。
Ds有以下属性:
{ length:本页数据量, RecordCount: 总记录数, AbsolutePage: 当前页码, PageCount: 总页数, PageSize: 每页记录数 }
Parameter(sql /* , Rs */)
创建“存储过程”式查询,可以有效防止SQL注入。
例如:Set par = DH.Parameter(sql)
par有如下方法:
par.Add(value /*, type, len, name */)
par.AddRange() // 可同时添加多个参数,例如:par.Add(["test", "varchar", 254], "hello")
par.Execute() // 执行命令,如有数据则返回数组(vbarray)
par.NonQuery() // 结果参考DH.NonQuery
par.Scalar() // 结果参考DH.Scalar
par.DataSet(/* pagesize, pagenum */) // 结果参考 DH.DataSet
SetTable(tableNam/* , Rs */)
对指定表进行增删改操作,例如:var tbl = DH.SetTable("Users");
tbl有如下方法:
tbl.Where("ID=? and Name=?", [1, "Test"]) // 仍然返回tbl对象
tbl.Insert({ ID : 1, Name : "Test" })
tbl.Delete(/* where语句, [where 参数] */)
tbl.Update({ Name : "Test" } /* , where 语句, [where 参数] */)
其他方法列表(请直接参考文档说明):
DH.JsObject(obj).Item(name) 或DH.JsObject.Get(obj, Name)
DH.NewTable(name)
DH.CreateAccess(/* dbpth */)
DH.CompactAccess(/* dbpath */)
DH.CloneDB(/* connStr, backFile */) // 仅支持数据复制到Access
DH.MD5(str)
DH.Close(Rs) //当自己创建了Rs对象时使用