แนะนำ: อินสแตนซ์ ASP: การใช้แคชเพื่อปรับปรุงประสิทธิภาพการแสดงข้อมูล ตัวอย่างการสาธิต: ก่อนสร้างฐานข้อมูลอย่างง่ายเขียนฟังก์ชั่นเพื่ออ่านและเขียนอุณหภูมิตัวแปร DIM: รหัส ASP ต่อไปนี้คือเนื้อหาอ้างอิง: <% ฟังก์ชัน DisplayRec
| ต่อไปนี้เป็นเนื้อหาที่ยกมา: - Dim Oconn, ORS ตั้งค่า oconn = server.createObject (adodb.connection) set ors = server.createObject (adodb.recordset) oconn.open provider = microsoft.jet.oledb.4.0; แหล่งข้อมูล = server.mappath (db1.mdb) เซสชัน (conn) = oconn Ors.open Select * จาก T1, เซสชัน (Conn), 1,1 Response.write (ors (0)) ors.close ตั้งค่า ors = ไม่มีอะไร oconn.close ตั้งค่า oconn = ไม่มีอะไร - |
นี่คือรหัสที่หมุนเวียนอยู่บนอินเทอร์เน็ตเพื่อบันทึกวัตถุการเชื่อมต่อในวัตถุ Seesion มาตรวจสอบด้านล่าง:
| ต่อไปนี้เป็นเนื้อหาที่ยกมา: - Dim Oconn, ORS ตั้งค่า oconn = server.createObject (adodb.connection) set ors = server.createObject (adodb.recordset) oconn.open provider = microsoft.jet.oledb.4.0; แหล่งข้อมูล = server.mappath (db1.mdb) เซสชัน (conn) = oconn Ors.open Select * จาก T1, เซสชัน (Conn), 1,1 Response.write (เซสชัน (conn) .connectionstring) ors.close ตั้งค่า ors = ไม่มีอะไร oconn.close ตั้งค่า oconn = ไม่มีอะไร - |
เกิดข้อผิดพลาดแจ้งว่าวัตถุหายไป: 'เซสชัน (... )'! ซึ่งหมายความว่าวัตถุยังไม่ได้รับการคัดลอกสำเร็จ เราใช้ Typename (เซสชัน (Conn)) เพื่อทดสอบและผลลัพธ์คือสตริง! ออกมาจากความอยากรู้อยากเห็นเซสชันเอาท์พุทโดยตรง (Conn) เพื่อดู:
| ต่อไปนี้เป็นเนื้อหาที่ยกมา: - Dim Oconn, ORS ตั้งค่า oconn = server.createObject (adodb.connection) set ors = server.createObject (adodb.recordset) oconn.open provider = microsoft.jet.oledb.4.0; แหล่งข้อมูล = server.mappath (db1.mdb) เซสชัน (conn) = oconn Ors.open Select * จาก T1, เซสชัน (Conn), 1,1 Response.write (เซสชัน (Conn)) ors.close ตั้งค่า ors = ไม่มีอะไร oconn.close ตั้งค่า oconn = ไม่มีอะไร - |
ผลที่ได้คือ:
| ต่อไปนี้เป็นเนื้อหาที่ยกมา: ผู้ให้บริการ = microsoft.jet.oledb.4.0; รหัสผ่าน =; ID ผู้ใช้ = admin; แหล่งข้อมูล = e: /www/db1.mdb; โหมด = แชร์ปฏิเสธไม่มี; Registry Path =; Jet OLEDB: รหัสผ่านฐานข้อมูล =; Jet OLEDB: ประเภทเครื่องยนต์ = 5; Jet OLEDB: โหมดการล็อคฐานข้อมูล = 1; Jet OLEDB: Global Partial Bulk Ops = 2; Jet OLEDB: ธุรกรรมจำนวนมากทั่วโลก = 1; Jet OLEDB: รหัสผ่านฐานข้อมูลใหม่ =; Jet OLEDB: สร้างฐานข้อมูลระบบ = FALSE; ไม่มีการซ่อมแซมแบบจำลอง = false; Jet OLEDB: SFP = FALSE |
นี่ไม่ใช่ค่าคุณสมบัติการเชื่อมต่อของวัตถุการเชื่อมต่อหรือไม่? คุณสมบัติเริ่มต้นของวัตถุการเชื่อมต่อคือการเชื่อมต่อ ถ้าเช่นนั้นทำไมมันจะประสบความสำเร็จเมื่อใช้ ORS.Open Select * จาก T1, Session (Conn), 1,1? ค้นหาข้อมูลและค้นหาว่าพารามิเตอร์ที่สองของ Method Open Object Object สามารถเป็นวัตถุการเชื่อมต่อหรือสตริงของข้อมูลการเชื่อมต่อฐานข้อมูล! ตกลงวัตถุ OCONN ในตัวอย่างด้านบนซ้ำซ้อนอย่างสมบูรณ์เพียงแค่ใช้รหัสต่อไปนี้:
| ต่อไปนี้เป็นเนื้อหาที่ยกมา: - สลัวหรือ set ors = server.createObject (adodb.recordset) เซสชัน (conn) = ผู้ให้บริการ = microsoft.jet.oledb.4.0; แหล่งข้อมูล = server.mappath (db1.mdb) Ors.open Select * จาก T1, เซสชัน (Conn), 1,1 Response.write (ors (0)) ors.close ตั้งค่า ors = ไม่มีอะไร - |
ผลลัพธ์ถูกต้อง ตกลงจนถึงตอนนี้ยังมีปัญหาหนึ่งที่ยังไม่ได้รับการแก้ไข: วิธีการคัดลอกวัตถุที่ถูกต้องเป็นอย่างไร? หรือใช้คำสั่ง SET:
| ต่อไปนี้เป็นเนื้อหาที่ยกมา: - Dim Oconn, ORS ตั้งค่า oconn = server.createObject (adodb.connection) set ors = server.createObject (adodb.recordset) oconn.open provider = microsoft.jet.oledb.4.0; แหล่งข้อมูล = server.mappath (db1.mdb) ตั้งค่าเซสชัน (conn) = oconn Ors.open Select * จาก T1, เซสชัน (Conn), 1,1 Response.write (เซสชัน (conn) .connectionstring) Response.write (<br/>) Response.write (typename (เซสชัน (conn)))) ors.close ตั้งค่า ors = ไม่มีอะไร oconn.close ตั้งค่า oconn = ไม่มีอะไร - |
เวลานี้ข้อมูลคุณสมบัติการเชื่อมต่อสามารถแสดงได้และผลลัพธ์ก็แสดงว่าเซสชัน (Conn) เป็นวัตถุการเชื่อมต่อ!
ข้อความต้นฉบับ: http://www.mzwu.com/article.asp?id=1105
แบ่งปัน: การตั้งค่าการติดตั้ง Windows 2003 IIS การติดตั้งบทที่ 2003: การติดตั้งเริ่มต้นโดยไม่มี IIS ถึงเวลาเลือกรายการในรายการ เลือกแอปพลิเคชันเซิร์ฟเวอร์ (iis, asp.net) จากรายการ