濮阳杆衣贸易有限公司

主頁(yè) > 知識(shí)庫(kù) > ASP中RecordSet Open和Connection.Execute一些區(qū)別與細(xì)節(jié)分享

ASP中RecordSet Open和Connection.Execute一些區(qū)別與細(xì)節(jié)分享

熱門標(biāo)簽:姜堰電銷機(jī)器人 海南銀行智能外呼系統(tǒng)商家 遼寧正規(guī)電銷機(jī)器人 許昌智能電銷機(jī)器人公司 辰溪地圖標(biāo)注 電銷機(jī)器人違法了嗎 澳大利亞城市地圖標(biāo)注 上海浦東騰訊地圖標(biāo)注位置 遼寧銀行智能外呼系統(tǒng)

rs.open sql,conn:如果sql是delete,update,insert則會(huì)返回一個(gè)關(guān)閉的記錄集,在使用過(guò)程中不要來(lái)個(gè)rs.close在文件最后再寫rs.close
中間可以來(lái)多個(gè)記錄集rs1.open sql1,conn,最后一塊關(guān)閉記錄集:rs.close rs1.close
conn.execute(sql) 如果sql是delete,update,insert則會(huì)返回一個(gè)關(guān)閉的記錄集,在使用過(guò)程中不要來(lái)個(gè)rs.close在文件最后再寫rs.close
中間可以來(lái)多個(gè)記錄集rs1.open sql1,conn,最后一塊關(guān)閉記錄集:rs.close rs1.close.
如果sql是update,insert,delete則應(yīng)該使用conn.execute(sql)也可以不要括號(hào)conn.execute sql
如果sql是select語(yǔ)句則應(yīng)該使用set rs=conn.execute(sql)括號(hào)一定要,不能省略:這是因?yàn)関bscript的特性,帶返回值
的調(diào)用必須加括號(hào),不帶返回值的調(diào)用可以不要括號(hào)。

注意:不管是rs.open sql,conn還是conn.execute(sql) [這里的SQL是delete,update,insert]執(zhí)行以后都會(huì)返回一個(gè)關(guān)閉的記錄集
也就是說(shuō)如果sql是插入,更新,刪除語(yǔ)句,那么set rs=conn.execute(sql)中的RS就沒(méi)什么意義。

1.conn.execute

sql="select * from admin where username='xiaozhu'"
set rs=conn.execute(sql)
執(zhí)行完以后自動(dòng)關(guān)閉記錄集
最后只需要關(guān)閉連接就可以了
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
可以自己設(shè)定一些參數(shù),即鎖定和游標(biāo)的移動(dòng)方式
最后要關(guān)閉記錄集和連接
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語(yǔ)句") 得到的rs.recordcount=-1
rs.open sql,conn("sql為select語(yǔ)句") 得到的rs.recordcount為正常的記錄數(shù)

2.

rs.open是打開(kāi)數(shù)據(jù)庫(kù) conn.execute 是執(zhí)行SQL指令
set rs=conn.execute(insert,update,delete)返回一個(gè)關(guān)閉了的記錄集
set rs=conn.execute(select)返回一個(gè)沒(méi)有關(guān)閉的記錄集

3.

CONN.EXECUTE(SQL,RowsAffected,C)
參數(shù)含義:
SQL的值可以是SQL語(yǔ)句、表名、存儲(chǔ)過(guò)程名,也可以是數(shù)據(jù)提供者所能接受的任意字符串。為了提高性能,最好為C參數(shù)指定合適的值
可選參數(shù)RowsAffected將返回INSERT、UPDATE或DELETE查詢執(zhí)行以后所影響的數(shù)目。這些查詢會(huì)返回一個(gè)關(guān)閉的Recordset對(duì)象。
一個(gè)SELECT查詢將返回RowsAffected值為-1并且返回帶有一行或多行內(nèi)容的打開(kāi)的Recordset。

4.

conn.execute sql適合于不需返回recordset對(duì)象時(shí)使用,比如下面的代碼:

sql="delete from enews where id="cstr(id)
conn.execute sql

如果需要返回recordset對(duì)象,則使用如下代碼:

sql="select from enews where id="cstr(id)
set rs = conn.execute(sql)

如果去掉execute(sql)這兒的括號(hào)(即為set rs = conn.execute sql),就會(huì)提示“語(yǔ)句未結(jié)束”這樣的錯(cuò)誤提示,我翻看了一下語(yǔ)法格式,發(fā)現(xiàn)有二種格式,詳解如下:
格式一:Connection對(duì)象名.Execute(SQL指令).
格式二:Connection對(duì)象名.Execute(數(shù)據(jù)表名)。

rs.open sql,conn
rs.open sql,conn,1,1
rs.open sql,conn,3,2
rs.open sql,conn,3,3

關(guān)于上面語(yǔ)句中后面的數(shù)字都代表什么意思?還有省略數(shù)字(rs.open sql,conn)時(shí)默認(rèn)的是哪一個(gè)?  

最佳答案

RS.OPEN SQL,CONN,A,B

A: ADOPENFORWARDONLY(=0) 只讀,且當(dāng)前數(shù)據(jù)記錄只能向下移動(dòng)
ADOPENKEYSET(=1) 可讀寫,當(dāng)前數(shù)據(jù)記錄可自由移動(dòng)
ADOPENDYNAMIC(=2) 可讀寫,當(dāng)前數(shù)據(jù)記錄可自由移動(dòng),可看到新增記錄
ADOPENSTATIC(=3) 只讀,當(dāng)前數(shù)據(jù)記錄可自由移動(dòng)

B: ADLOCKREADONLY(=1) 缺省鎖定類型,記錄集是只讀的,不能修改記錄
ADLOCKPESSIMISTIC(=2) 悲觀鎖定,當(dāng)修改記錄時(shí),數(shù)據(jù)提供者將嘗試鎖定記錄以確保成功地編輯記錄。只要編輯一開(kāi)始,則立即鎖住記錄。
ADLOCKOPTIMISTIC(=3) 樂(lè)觀鎖定 ,直到用Update方法提交更新記錄時(shí)才鎖定記錄。
ADLOCKBATCHOPTIMISTIC(=4) 批量樂(lè)觀鎖定,允許修改多個(gè)記錄,只有調(diào)用UpdateBatch方法后才鎖定記錄。
當(dāng)不需要改動(dòng)任何記錄時(shí),應(yīng)該使用只讀的記錄集,這樣提供者不用做任何檢測(cè)。對(duì)于一般的使用,樂(lè)觀的鎖定可能是最好的選擇,因?yàn)橛涗浿槐绘i定一小段時(shí)間, 數(shù)據(jù)在這段時(shí)間被更新。這減少了資源的使用。

到此這篇關(guān)于ASP中RecordSet Open和Connection.Execute一些區(qū)別與細(xì)節(jié)分享的文章就介紹到這了,更多相關(guān)RecordSet Open和Connection.Execute內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

標(biāo)簽:晉城 撫州 銅川 西藏 威海 伊春 崇左 深圳

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《ASP中RecordSet Open和Connection.Execute一些區(qū)別與細(xì)節(jié)分享》,本文關(guān)鍵詞  ASP,中,RecordSet,Open,和,Connection.Execute,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《ASP中RecordSet Open和Connection.Execute一些區(qū)別與細(xì)節(jié)分享》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于ASP中RecordSet Open和Connection.Execute一些區(qū)別與細(xì)節(jié)分享的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    淮北市| 梨树县| 方山县| 沙雅县| 宜川县| 秀山| 美姑县| 江口县| 梁平县| 阳朔县| 秦安县| 凌云县| 银川市| 安吉县| 启东市| 鲜城| 通江县| 阳信县| 石城县| 平阳县| 甘德县| 竹山县| 托里县| 邵阳县| 留坝县| 新安县| 镇沅| 策勒县| 博客| 象州县| 剑川县| 将乐县| 镇沅| 仁化县| 白玉县| 通榆县| 剑川县| 南陵县| 探索| 绵竹市| 中卫市|