我们平时再写asp程序执行查询时,一般有两种写法:
set rs=server.createobject("adodb.recordset")
sql="select top 10 id,name from tablename"
rs.open sql,conn,1,1
和
sql="select top 10 id,name from tablename"
set toprs=conn.execute(sql)
他们的主要区别是:用rs.open有丰富的游标类型,conn.execute只能打开一个向前的游标。如要用到分页,或者象,update这样的情况,都要用rs.open的。而且后面的参数也不一样。
1.conn.execute
sql="select * from admin where username='xiaozhu'"
set rs=conn.execute(sql)
执行完以后自动关闭记录集
最后只需要关闭连接就可以了
conn.close
set conn=nothing
2.rs.open
set rs=server.createobject("adodb.recordset")
sql="select * from admin where username='xiaozhu'"
rs.open sql,conn,1,1
可以自己设定一些参数,即锁定和游标的移动方式
最后要关闭记录集和连接
rs.close
set rs=nothing
conn.close
set conn=nothing
3.command.execute
sql="select * from admin where username='xiaozhu'"
set rs=command.execute(sql)
*****************************************************************************
1.
set rs=conn.execute("如果是select语句") 得到的rs.recordcount=-1
rs.open sql,conn("sql为select语句") 得到的rs.recordcount为正常的记录数
2.
rs.open是打开数据库 conn.execute 是执行SQL指令
set rs=conn.execute(insert,update,delete)返回一个关闭了的记录集
set rs=conn.execute(select)返回一个没有关闭的记录集