wenku.sharew.cn
Rs.Open和Conn.Execute的区别
浏览:6 | 发布时间:2018-1-3 18:59:06

Rs.Open SQL,Conn

1.如果sql是 delete,update,insert 则会返回一个关闭的记录集,但在后面要关闭数据库

2.如果sql是 select 会返回没有关闭的记录集,用完关闭再关数据库

Conn.Execute(SQL)

1.如果sql是 delete,update,insert 则会返回一个关闭的记录集,但在后面要关闭数据库

2.如果sql是 select 会返回没有关闭的记录集,用完关闭再关数据库

3.如果sql是 update,insert,delete 则应该使用Conn.Execute(sql) 也可以不要括号Conn.Execute sql

4.如果sql是 select 则应该使用Set Rs=Conn.Execute(sql)括号不能省略,这是因为vb的特性,带返回值的调用必须加括号,不带返回值的调用可以不要括号。

1.Conn.Execute

sql="select 字段 from 表名 where 字段='条件'"
Set Rs=Conn.Execute(sql)
str=rs("id")

rs.close
Set rs=nothing

conn.close
Set conn=nothing

2.Rs.Open

Set Rs=Server.CreateObject("Adodb.Recordset")
sql="select 字段 from 表名 where 字段='条件'"
Rs.Open sql,Conn,1,1
'可以自己设定一些参数,即锁定和游标的移动方式
'最后要关闭记录集和连接
Rs.Close
Set Rs=nothing
Conn.Close
Set Conn=Nothing

3.command.execute

sql="select 字段 from 表名 where 字段='条件变量'"
Set Rs=Command.Execute(sql)

一.
Set Rs=Conn.Execute("如果是select语句") 得到的rs.recordcount=-1
Rs.Open sql,conn("sql为select语句") 得到的rs.recordcount为正常的记录数

二.
Rs.Open是打开数据库 Conn.Execute 是执行SQL指令
Set Rs=Conn.Execute(insert,update,delete)返回一个关闭了的记录集
Set Rs=Conn.Execute(select)返回一个没有关闭的记录集

三.
Conn.Execute(SQL,RowsAffected,C)

参数含义:

SQL的值可以是SQL语句、表名、存储过程名,也可以是数据提供者所能接受的任意字符串。为了提高性能,最好为C参数指定合适的值。
可选参数RowsAffected将返回INSERT、UPDATE或DELETE查询执行以后所影响的数目。这些查询会返回一个关闭的Recordset对象。
一个SELECT查询将返回RowsAffected值为-1并且返回带有一行或多行内容的打开的Recordset。

四.
Conn.Execute sql适合于不需返回recordset对象时使用,比如下面的代码:
sql="delete from news where id="&cstr(id)
Conn.Execute sql

如果需要返回recordset对象,则使用如下代码:
sql="select from news where id="&cstr(id)
Set Rs=Conn.Execute(sql)

如果去掉execute(sql)这儿的括号(即为set rs = Conn.Execute sql),就会提示“语句未结束”这样的错误提示,我翻看了一下语法格式,发现有二种格式,详解如下:

格式一:Connection对象名.Execute(SQL指令)
格式二:Connection对象名.Execute(数据表名)


Conn.Execute(sql)(0)为数据集的第一个字段的值
Conn.Execute(sql) 返回记录集。
Conn.Execute sql 不返回记录集。一般用于插入、更新,删除等不带返回值的操作


本文来自: 众享文库,转载请保留出处!

文库内容仅供参考,本站不保证其内容的有效性,如果您需解决具体问题(尤其法律、医学等领域)建议您详细咨询相关领域专业人士。
如果涉及不良内容、个人隐私、版权问题等,敬请举报投诉,本站将立即处理。

友情链接:手写查字典 小说下载查成语 经验文献
© 2017-2018 wenku.sharew.cn 桂ICP备13001205号-1 联系方式

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏