ข้อไหนดีกว่าที่จะใช้ Command object หรือ RecordSet object เพื่อเพิ่มบันทึกลงในฐานข้อมูล
ฉันควรเลือกอันไหน?
คำสั่งใช้สำหรับการถ่ายโอนพารามิเตอร์ โดยเฉพาะการถ่ายโอนพารามิเตอร์แบบกลุ่ม วัตถุ Command ส่วนใหญ่จะส่งผ่านพารามิเตอร์ไปยังคำสั่ง SQL และ StoredProcude
อาศัยฟังก์ชันที่มีประสิทธิภาพของ SQL เพื่อดำเนินการฐานข้อมูลให้เสร็จสมบูรณ์ และวัตถุ RecordSet เราสามารถถือเป็นการห่อหุ้มวัตถุข้อมูลและให้ชุดของ
วิธีการและคุณสมบัติเพื่อทำให้การเขียนโปรแกรมฐานข้อมูลง่ายขึ้น
จากการสาธิตการเพิ่มบันทึกลงในฐานข้อมูลโดยใช้สองวิธีต่อไปนี้ เราจะเห็นว่าวัตถุทั้งสองนี้ใช้วิธีการที่แตกต่างกันเพื่อจัดการกับปัญหาบางอย่าง:
ดูเหมือนว่าวัตถุ RecordSet จะเข้าใจง่ายกว่า แต่ประสิทธิภาพของ Command นั้นเหนือกว่า โดยเฉพาะอย่างยิ่งเมื่อเพิ่มบันทึกเป็นชุด
1. วิธีการใช้วัตถุ Command:
const adCmdText=&H0001
const adInteger=3
const adVarChar=200
ค่าคงที่ adParamInput = &H0001
ตั้งค่า conn=Server.CreateObject (ADODB.Connection)
ตั้ง comm=Server.Createobject(ADODB.Command)
conn.open Driver={ไดรเวอร์ Microsoft Access};DBQ=& _
Server.Mappath(/source_asp)&/property/chunfeng.mdb;
comm.ActiveConnection=การเชื่อมต่อ
comm.CommandType=adCmdText
comm.CommandText=ใส่ลงใน chunfeng (ID,ชื่อ,) & _
&ค่า(?,?,?)
ตั้งค่า param=comm.CreateParameter(ID,adInteger,adParamInput,3,4)
comm.Parameters.Append พารามิเตอร์
ตั้งค่า param=comm.CreateParameter(NAME,adVarChar,adParamInput,255, intels)
comm.Parameters.Append พารามิเตอร์
comm.ดำเนินการ
เชื่อมต่อปิด
2. วิธีการใช้วัตถุ RecordSet
const adCmdTable=&H0002
ตั้งค่า conn=Server.CreateObject (ADODB.Connection)
ตั้ง rs = Server.Createobject (ADODB.RecordSet)
conn.open Driver={ไดรเวอร์ Microsoft Access (*.mdb)};DBQ=& _
Server.Mappath(/source_asp)&/property/chunfeng.mdb;
rs.ActiveConnection=conn
rs.open chunfeng,,,adCmdTable
rs.เพิ่มใหม่
อาร์เอส(ไอดี)=4
rs(ชื่อ)=intels
อาร์เอสอัปเดต
RS.ปิด
เชื่อมต่อปิด