แนะนำ: การวิเคราะห์สั้น ๆ ของคลาสดีบั๊กใน ASP-VBScript ฉันไม่รู้ว่าเพื่อนที่เขียนรหัสใน ASP มีความรู้สึกเหมือนกับฉันหรือไม่ สิ่งที่ลำบากที่สุดใน ASP คือไม่สะดวกในการดีบักโปรแกรม ฉันคิดว่าเพื่อนหลายคนอาจใช้วิธีนี้ "ตอบสนองเขียน" แล้วส่งออกข้อความที่เกี่ยวข้องเพื่อดูว่าเป็นหรือไม่
ASP (หน้าเซิร์ฟเวอร์ที่ใช้งานอยู่) เป็นหนึ่งในเครื่องมือที่เสนอโดย Microsoft เพื่อพัฒนาแอพพลิเคชั่นอินเทอร์เน็ต การเชื่อมต่อระหว่าง ASP และฐานข้อมูลโดยทั่วไปจะถูกนำไปใช้ผ่าน ADO (วัตถุข้อมูล ActiveX) เช่นเดียวกับบทความ "การดำเนินการฐานข้อมูล SQL Server ด้วย ASP" ใน "Computer World" ในวันที่ 20 มีนาคม 2000 ADO สามารถรองรับ Microsoft SQL Server ได้อย่างเต็มที่ แต่มีปัญหาบางอย่างในบริการฐานข้อมูล Oracle ที่มีแอพพลิเคชั่นที่กว้างขวางและกลไกที่ซับซ้อนมากขึ้น หากคุณต้องการทำฟังก์ชั่นการสืบค้นง่าย ๆ ADO ก็เพียงพอแล้ว หากคุณต้องการเล่นฟังก์ชั่นที่ไม่ซ้ำกันของฐานข้อมูล Oracle เช่นขั้นตอนที่เก็บไว้ฟังก์ชั่นที่เก็บไว้ ฯลฯ คุณต้องใช้ ASP เพื่อเข้าถึง Oracle เครื่องมือที่ทรงพลังอีกอย่างสำหรับบริการฐานข้อมูล - Oracle Object Server ใน Oracle Object สำหรับ OLE บทความนี้ใช้ตัวอย่างเพื่อแสดงวิธีการใช้การควบคุมที่จัดทำโดย Oracle Object Server ใน ASP เพื่อใช้การเข้าถึงฐานข้อมูล Oracle และกล่าวถึงการอภิปรายบางอย่างเกี่ยวกับวิธีการรักษาข้อ จำกัด ด้านความสมบูรณ์ของฐานข้อมูลเครือข่าย
Oracle Object สำหรับ OLE เป็นผลิตภัณฑ์ที่จำเป็นมากที่พัฒนาโดย Oracle สำหรับฐานข้อมูลการเข้าถึงไคลเอนต์ มันใช้ Windows 95/98/NT เป็นพื้นฐานสำหรับแอปพลิเคชันที่เข้ากันได้กับ OLE ทั้งหมดและภาษาโปรแกรมเพื่อเข้าถึงฐานข้อมูล Oracle เช่น ASP, Visual Basic Over97 ฯลฯ Oracle Object สำหรับ OLE รวมถึงผลิตภัณฑ์สามรายการรวมถึง Oracle Object Server, Oracle Data Control
เมื่อเปรียบเทียบกับ ADO Oracle Object Server เป็นผลิตภัณฑ์ที่อุทิศให้กับการพัฒนาแอปพลิเคชันฐานข้อมูล Oracle และมีข้อดีดังต่อไปนี้:
(1) การเชื่อมต่อกับเซิร์ฟเวอร์ฐานข้อมูลมีประสิทธิภาพ เนื่องจาก ADO เชื่อมต่อกับเซิร์ฟเวอร์ฐานข้อมูลผ่าน ODBC และ Oracle Object Server เชื่อมต่อกับเซิร์ฟเวอร์ฐานข้อมูลผ่าน Oracle SQL*NET
(2) เล่นฟังก์ชั่นที่ไม่ซ้ำกันของฐานข้อมูล Oracle ได้ดีขึ้น เช่นขั้นตอนที่เก็บไว้ฟังก์ชั่นที่เก็บไว้แพ็คเกจหรือเคอร์เซอร์หลายตัว โครงสร้างของรายการสมุดที่อยู่มีดังนี้:
| ต่อไปนี้เป็นเนื้อหาที่ยกมา: ชื่อ NULL? พิมพ์ - ชื่อไม่ใช่ Null Char (8) ที่อยู่ถ่าน (20) ถ่านโทรศัพท์ (20) อีเมล varchar2 (30) |
ครั้งแรก: กำหนดค่าสภาพแวดล้อม:
ติดตั้งซอฟต์แวร์ต่อไปนี้บนเว็บเซิร์ฟเวอร์และกำหนดค่า:
(1) เว็บเซิร์ฟเวอร์พื้นฐาน (เว็บเซิร์ฟเวอร์) และ ASP และซอฟต์แวร์อื่น ๆ
(2) Oracle Object สำหรับ ole2.x
(3) ไคลเอนต์ SQL*NET หรือ ORACLE NET8 ไคลเอ็นต์ 8 หลังจากการติดตั้งใช้ SQL*NET Easy Configuration เพื่อสร้างฐานข้อมูลนามแฝง (นามแฝงฐานข้อมูล) เพื่อเชื่อมต่อกับฐานข้อมูล
สอง. การใช้งานฟังก์ชั่น
(1) แบบสอบถาม: ใช้ ASP เพื่อรับข้อมูลของตารางที่อยู่ฐานข้อมูล (TSB1) และแสดงข้อมูลบนหน้าจอ กุญแจสำคัญในการสอบถามคือการพิจารณาว่าการเชื่อมต่อกับฐานข้อมูลนั้นสำเร็จหรือไม่ Oracle Object Server มีกลไกการควบคุมข้อผิดพลาดในการรายงานข้อผิดพลาดในการเชื่อมต่อฐานข้อมูล ขั้นตอนเฉพาะมีดังนี้:
| ต่อไปนี้เป็นเนื้อหาที่ยกมา: <html> <tile> โปรแกรมการสืบค้น </title> <body> - เมื่อเกิดข้อผิดพลาดต่อไป เชื่อมต่อกับฐานข้อมูล set orasession = createObject (OracleInprocserver.xorasession) SET ORADATABASE = ORASESSION dbopendatabase (AXP03, Scott/Tiger, 0) การจัดการข้อผิดพลาด ถ้า err.number> 0 แล้ว Response.write <H4> การควบคุมข้อผิดพลาด ASP </h4> Response.Writeasp ข้อผิดพลาดที่มา: & err.source & <br> Response.Writeasp รหัสข้อผิดพลาด: & err.number & <br> response.writeasp ข้อผิดพลาดคำอธิบาย: & err.description & <br> err.clear response.write <h4> oracle ole error control < /h4> response.writeoracle รหัสข้อผิดพลาด: & orasession.lastservererr & <br> Response.WriteOracle ข้อผิดพลาดคำอธิบาย: & orasession.lastservererretrete & <br> อื่น ๆ สอบถาม SQL = SELECT * จาก TSB1 ตั้งค่า oradynaset = oradatabase.dbcreatedynaset (SQL, 0) Response.write <H3> ผลลัพธ์ </h3> Response.write <table border = 5> <tr> สำหรับ i = 0 ถึง oradynaset.fields.count -1 Response.write <td> Response.write oradynaset.fields (i) Name & Response.write </td> next response.write </tr> ทำจนกระทั่ง oradynaset.eof response.write <tr> สำหรับ i = 0 ถึง oradynaset.fields.count -1 response.write <td> response.write oradynaset.fields (i) response.write </td> next response.write </tr> oradynaset.dbmovenext loop response.write < /table> |
ปิดฐานข้อมูล
| ต่อไปนี้เป็นเนื้อหาที่ยกมา: oradatabase.close set orasession = ไม่มีอะไรสิ้นสุดถ้า %> </body> </html> |
ต่อไปนี้เป็นแผนภาพการสืบค้นของโปรแกรม:
แชร์: วิธีตีความข้อผิดพลาดของวัตถุเซิร์ฟเวอร์ของเว็บไซต์ ASP อาการ: ข้อผิดพลาดต่อไปนี้เกิดขึ้นเมื่อเข้าถึงหน้าเว็บ ASP: ข้อผิดพลาดของวัตถุเซิร์ฟเวอร์ '' ASP 0178: 80070005''Server.CreateObject การเข้าถึงข้อผิดพลาด/_fpClass/fpdbrgn1.inc
2 หน้ารวมหน้าก่อนหน้า 12 หน้าถัดไป