rs.open sql,conn:如果sql是delete,update,insert則會返回一個(gè)關閉的(de)記錄集,在使用(yòng)過程中不要來(lái)個(gè)rs.close在文件最後再寫rs.close
中間可(kě)以來(lái)多(duō)個(gè)記錄集rs1.open sql1,conn,最後一塊關閉記錄集:rs.close rs1.close
conn.execute(sql) 如果sql是delete,update,insert則會返回一個(gè)關閉的(de)記錄集,在使用(yòng)過程中不要來(lái)個(gè)rs.close在文件最後再寫rs.close
中間可(kě)以來(lái)多(duō)個(gè)記錄集rs1.open sql1,conn,最後一塊關閉記錄集:rs.close rs1.close.
如果sql是update,insert,delete則應該使用(yòng)conn.execute(sql)也(yě)可(kě)以不要括号conn.execute sql
如果sql是select語句則應該使用(yòng)set rs=conn.execute(sql)括号一定要,不能省略:這(zhè)是因爲vbscript的(de)特性,帶返回值
的(de)調用(yòng)必須加括号,不帶返回值的(de)調用(yòng)可(kě)以不要括号。
注意:不管是rs.open sql,conn還(hái)是conn.execute(sql) [這(zhè)裏的(de)SQL是delete,update,insert]執行以後都會返回一個(gè)關閉的(de)記錄集
也(yě)就是說如果sql是插入,更新,删除語句,那麽set rs=conn.execute(sql)中的(de)RS就沒什(shén)麽意義。asp網站設計
1.conn.execute
sql="select * from admin where username='xiaozhu'"
set rs=conn.execute(sql)
執行完以後自動關閉記錄集
最後隻需要關閉連接就可(kě)以了(le)
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
可(kě)以自己設定一些參數,即鎖定和(hé)遊标的(de)移動方式
最後要關閉記錄集和(hé)連接
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語句") 得(de)到的(de)rs.recordcount=-1
rs.open sql,conn("sql爲select語句") 得(de)到的(de)rs.recordcount爲正常的(de)記錄數
2.
rs.open是打開數據庫 conn.execute 是執行SQL指令
set rs=conn.execute(insert,update,delete)返回一個(gè)關閉了(le)的(de)記錄集
set rs=conn.execute(select)返回一個(gè)沒有關閉的(de)記錄集
3.
CONN.EXECUTE(SQL,RowsAffected,C)
參數含義:
SQL的(de)值可(kě)以是SQL語句、表名、存儲過程名,也(yě)可(kě)以是數據提供者所能接受的(de)任意字符串。爲了(le)提高(gāo)性能,最好爲C參數指定合适的(de)值
可(kě)選參數RowsAffected将返回INSERT、UPDATE或DELETE查詢執行以後所影(yǐng)響的(de)數目。這(zhè)些查詢會返回一個(gè)關閉的(de)Recordset對(duì)象。
一個(gè)SELECT查詢将返回RowsAffected值爲-1并且返回帶有一行或多(duō)行内容的(de)打開的(de)Recordset。
4.
conn.execute sql适合于不需返回recordset對(duì)象時(shí)使用(yòng),比如下(xià)面的(de)代碼:
sql="delete from enews where id="&cstr(id)
conn.execute sql
如果需要返回recordset對(duì)象,則使用(yòng)如下(xià)代碼:
sql="select from enews where id="&cstr(id)
set rs = conn.execute(sql)
如果去掉execute(sql)這(zhè)兒(ér)的(de)括号(即爲set rs = conn.execute sql),就會提示“語句未結束”這(zhè)樣的(de)錯誤提示,我翻看了(le)一下(xià)語法格式,發現有二種格式,詳解如下(xià):
格式一:Connection對(duì)象名.Execute(SQL指令).
格式二:Connection對(duì)象名.Execute(數據表名)。