今后地位:首页 > 建站常识 > 列表

Rs.Open和Conn.Execute的区分

点击: 次时辰:2018/5/17关头词:上海网页设想
常常会碰到如许一些题目:1、甚么时辰利用rs.close,甚么时辰不利用。2、数据库中明显有记实,也有合适请求的记实,而rs.recordcount却即是-1这些都是与rs.open与conn.execute有关,固然这两个都是履行sql语句的,但仍是有一些

常常会碰到如许一些题目:

1、甚么时辰利用rs.close,甚么时辰不利用。

2、数据库中明显有记实,也有合适请求的记实,而rs.recordcount却即是-1

这些都是与rs.open与conn.execute有关,固然这两个都是履行sql语句的,但仍是有一些区分。

Rs.Open和Conn.Execute的区分:

Rs.Open SQL,Conn

若是sql是delete,update,insert则会前往一个封闭的记实集,在利用进程中不要来个rs.close在文件最初再写rs.close中心能够来多个记实集rs1.open sql1,conn,最初一块封闭记实集:rs.close rs1.close

Conn.Execute(SQL)

若是sql是delete,update,insert则会前往一个封闭的记实集,在利用进程中不要来个rs.close在文件最初再写rs.close中心能够来多个记实集rs1.open sql1,conn,最初一块封闭记实集:rs.close rs1.close.

若是sql是update,insert,delete则应当利用Conn.Execute(sql)也能够不要括号Conn.Execute sql

若是sql是select语句则应当利用Set Rs=Conn.Execute(sql)括号必然要,不能省略

这是由于vb的特征,带前往值的挪用必须加括号,不带前往值的挪用能够不要括号。

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


参数寄义:

SQL的值能够是SQL语句、表名、存储进程名,也能够是数据供给者所能接管的肆意字符串。为了进步机能,最好为C参数指定合适的值。

可选参数RowsAffected将前往INSERT、UPDATE或DELETE查问履行今后所影响的数量。这些查问会前往一个封闭的Recordset工具。

一个SELECT查问将前往RowsAffected值为-1并且前往带有一行或多行内容的翻开的Recordset。

4.

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 不前往记实集。普通用于拔出、更新,删除等不带前往值的操纵

预定建站
收费供给网站优化
支付关头词