|
智囊团成员
   
E.S.T智囊团成员 - 帖子
- 1243
- 精华
- 8
- 积分
- 6153
- 阅读权限
- 150
- 性别
- 男
- 在线时间
- 593 小时
- 注册时间
- 2005-3-18
- 最后登录
- 2008-6-6
|
楼主
大 中
小 发表于 2006-1-31 08:47 只看该作者
[转载]ColdFusion中的RecordSet Component
信息来源:Wayne_Deng的专栏
CF中对数据的操作都是通过CFQuery来进行的,纯粹从便利的角度上来讲远远比不上asp中的recordset object。不过在coldfusion MX里面也有对象了嘛,我们也来自己封装一个简单的recordset Component!
下面是应用示例,熟悉recordset object的不用多说也明白吧?操作起来确实方便。
|
以下是代码:
rs=createObject("component","CFNews.model.db.recordset"); rs.getByTable("article","article_source"); //打开recordsource为article_source中名为article的table
writeoutput(rs.getField("title") & " "); rs.MoveNext(); writeoutput(rs.getField("title") & " "); rs.MoveLast(); writeoutput(rs.getField("title") & " "); //添加一个新的记录 rs.addNew(); rs.setField("title","insert test"); rs.setField("content","This is a test"); rs.setField("artileID",8); rs.setField("img"," "); rs.update();
//修改第2个记录 rs.rownum=2; rs.setField("title","update test"); rs.update();
|
下面是recordset.cfc
CFNews.model.db.RecordSet Component RecordSet (Recordset class)
| hierarchy: |
WEB-INF.cftags.component CFNews.model.db.RecordSet
|
| path: |
C:\Inetpub\wwwroot\CFNews\model\db\RecordSet.cfc |
| properties: |
|
| methods: |
addNew, delete, edit, getBySQL, getByTable, getField, moveFirst, moveLast, moveNext, movePrev, setField, update | * - private method
| addNew |
public addNew ( )
Output: supressed
|
| delete |
public delete ( )
Output: supressed
|
| edit |
public edit ( )
Output: supressed
|
| getBySQL |
public getBySQL ( required string sql, required string recordSource )
get a Query object by a sql sentence
Output: supressed Parameters: sql: string, required, sql recordSource: string, required, recordSource
|
| getByTable |
public getByTable ( required string tableName, required string recordSource )
get a Query object by a table name
Output: supressed Parameters: tableName: string, required, tableName recordSource: string, required, recordSource
|
| getField |
public getField ( required string fieldName )
get field value by field name
Output: supressed Parameters: fieldName: string, required, fieldName
|
| moveFirst |
public moveFirst ( )
Output: supressed
|
| moveLast |
public moveLast ( )
Output: supressed
|
| moveNext |
public moveNext ( )
Output: supressed
|
| movePrev |
public movePrev ( )
Output: supressed
|
| setField |
public setField ( required string fieldName, required string value, string fieldType )
Output: supressed Parameters: fieldName: string, required, fieldName value: string, required, value fieldType: string, optional, fieldType
|
| update |
public update ( string IDName )
Output: supressed Parameters: IDName: string, optional, IDName
|
|
|
以下是代码:
select * from #this.tableName#
#PreserveSingleQuotes(this.sql)#
StructInsert(Evaluate("this.fields.#arguments.fieldName#"),"value",arguments.value,"yes");
delete from #this.tableName# where
#arguments.IDName#=
#arguments.IDName#=
insert into #this.tableName# (#fieldsList#) values(
#comma# )
update #this.tableName# set
#comma##f#=
where
#arguments.IDName#=
#arguments.IDName#=
|
人情如冰六月寒,花做一份艳,为谁笑人间?
如果任何人发现我转载的有图像的文章中图像失效或者文章有问题,请及时短消息通知我。先谢谢。::))
coup de foudre
|