การเรียนรู้การใช้ Stored Procedure (Stored Procedure) เป็นหนึ่งในหลักสูตรที่จำเป็นสำหรับโปรแกรมเมอร์ ASP ฐานข้อมูลขนาดใหญ่ทั้งหมดรองรับขั้นตอนการจัดเก็บ เช่น Oracle, MS SQL ฯลฯ (แต่ MS Access ไม่รองรับ อย่างไรก็ตาม สามารถใช้แบบสอบถามแบบกำหนดพารามิเตอร์ได้ใน Access)
การใช้ Stored Procedure มีประโยชน์มากมาย สามารถสรุปตรรกะข้อมูลที่ซับซ้อนและใช้ประโยชน์จากฐานข้อมูลขนาดใหญ่ได้อย่างเต็มที่ เรารู้ว่า ASP ไม่เหมาะสำหรับการดำเนินการกับข้อมูลที่ซับซ้อน และการเข้าถึงฐานข้อมูลผ่าน OLD DB จะใช้ทรัพยากรระบบเนื่องจากจำเป็นต้องถ่ายโอนข้อมูลระหว่าง ASP และฐานข้อมูล ในความเป็นจริง หากฐานข้อมูลมีบทบาทเพียงการจัดเก็บข้อมูล ฟังก์ชันต่างๆ ของฐานข้อมูลก็จะยังห่างไกลจากการใช้งาน
สำหรับข้อมูลเกี่ยวกับวิธีการสร้างขั้นตอนการจัดเก็บ โปรดดูเอกสารประกอบ MS SQL ที่เกี่ยวข้อง
บทความนี้แนะนำวิธีการใช้ขั้นตอนการจัดเก็บใน ASP
คำสั่ง SQL อย่างง่าย:
เลือก ID, ชื่อ, รูปภาพ, เวลา, หน้าที่จากการจ้างงาน
เราสามารถสร้างขั้นตอนการจัดเก็บ:
สร้างขั้นตอน sp_employ
เช่น
เลือก ID, ชื่อ, รูปภาพ, เวลา, หน้าที่จากการจ้างงาน
ไป
และคำสั่ง SQL:
เลือก ID,ชื่อ,รูปภาพ,เวลา,หน้าที่จากการจ้างงานโดย ID=10230
ขั้นตอนการจัดเก็บที่เกี่ยวข้องคือ: (แทนที่ขั้นตอนการจัดเก็บที่มีอยู่ของเราด้วย Alter)
แก้ไขขั้นตอน sp_employ
@inID อินท์
เช่น
เลือก ID,ชื่อ,รูปภาพ,เวลา,หน้าที่จากการจ้างงาน โดยที่ ID=@inID
ไป
ลองเปรียบเทียบสถานการณ์ของ SQL และกระบวนงานที่เก็บไว้ใน ASP ขั้นแรก มาดูการดำเนินการโดยตรงของ SQL:
-
สลัว Conn, strSQL, rs
ตั้งค่า Conn = Server.CreateObject("ADODB.Connection")
Conn.เปิด "DSN=webData;uid=user;pwd=password"
strSQL = " เลือก ID,ชื่อ,รูปภาพ,เวลา,หน้าที่จากการจ้างงาน "
ตั้งค่า rs = Conn.Execute (strSQL)
-
มาดูวิธีการดำเนินการ Stored Procedure:
-
สลัว Conn, strSQL, rs
ตั้งค่า Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "DSN=webData;uid=user;pwd=password" 'ทำการเชื่อมต่อ
strSQL = "sp_employ"
ตั้งค่า rs = Conn.Execute (strSQL)
-
การดำเนินการ Stored Procedure ด้วยพารามิเตอร์ค่อนข้างคล้ายกัน:
-
หรี่ Conn, strSQL, rs, myInt
myInt = 1
ตั้งค่า Conn = Server.CreateObject("ADODB.Connection")
Conn.เปิด "DSN=webData;uid=user;pwd=password"
strSQL = "sp_myStoredProcedure " & myInt
ตั้งค่า rs = Conn.Execute (strSQL)
-
คุณอาจคิดว่าการใช้ขั้นตอนการจัดเก็บใน ASP นั้นง่ายมาก ขวา! มันง่ายมาก