ขั้นแรก เรามาพูดถึงจุดประสงค์ของตัวอย่างของเรา - เพื่อให้ฐานข้อมูลส่งออก XML และเรียกมันภายใต้ระบบ .net
ชั้นข้อมูลของระบบนี้ใช้ฐานข้อมูลเซิร์ฟเวอร์ SQL และชั้นกลางสามารถใช้งานได้โดยใช้เครื่องมือ "การกำหนดค่าการสนับสนุน SQL XML ใน IIS" ที่มาพร้อมกับ SQL โอเค ตอนนี้เรากำลังจะทำมัน ขั้นแรก กำหนดค่า SQL ให้ส่งออก XML:
สิ่งนี้อาจฟังดูลึกลับเล็กน้อย แต่จริงๆ แล้ว มันแค่เพิ่ม: FOR XML AUTO หลังจากคำสั่งสืบค้นธรรมดาของเรา
ยกตัวอย่าง:
เลือกหัวข้อ ชื่อ เวลา 100 อันดับแรก
จาก bbs โดยที่ [order]=1 ORDER BY [Time] DESC
FOR XML AUTO
ในตัววิเคราะห์แบบสอบถาม SQL คุณจะพบว่าเอาต์พุตไม่ใช่ตารางที่เราคิดไว้ตามปกติอีกต่อไป แต่เป็นสตริงที่ยาวมากหลายแถว และเนื้อหาคือโค้ด XML ที่เราต้องการ
ด้วยวิธีนี้ ขั้นตอนแรกคือการปล่อยให้ SQL เอาท์พุต XML
จากนั้นเราเริ่มขั้นตอนที่สอง เพื่อให้สามารถเรียกไฟล์ XML โดยใช้เว็บได้
หลังจากแก้ไขจุดบกพร่องเรียบร้อยแล้ว คุณสามารถสร้างไฟล์ได้: ตัวอย่างเช่น
เนื้อหา aaa.xml เป็นดังนี้:
<รูท xmlns:sql="โกศ:schemas-microsoft-com:xml-sql">
<sql:แบบสอบถาม>
เลือกหัวข้อ ชื่อ เวลา 100 อันดับแรก
จาก bbs โดยที่ [order]=1 ORDER BY [Time] DESC
สำหรับ XML อัตโนมัติ
</sql:แบบสอบถาม>
</ROOT>
สร้างไดเร็กทอรี bbb ใน c: และวางไว้ในนั้น
ส่วนตรงกลางคือคำสั่ง SQL แบบดั้งเดิมของเรา และการห่อหุ้มด้านหน้าและด้านหลังเป็นรูปแบบทั่วไปของเรา
วางไฟล์นี้ในไดเร็กทอรีแบบสุ่ม จากนั้นเปิด "กำหนดค่าการสนับสนุน SQL XML ใน IIS" ของ SQL และสร้างไดเร็กทอรีเสมือนบนไซต์ที่ต้องการการสนับสนุน XML เรียกมันว่า ccc โดยธรรมชาติแล้วเส้นทางในเครื่องจะเป็น c: bbb ของเรา
จากนั้นคลิกความปลอดภัย - ป้อนชื่อผู้ใช้และรหัสผ่าน SQL ของคุณ จากนั้นคลิกแหล่งข้อมูล ซึ่งเป็นตำแหน่งฐานข้อมูลของคุณและฐานข้อมูลเริ่มต้น
จากนั้นคลิกการตั้งค่า เลือกอนุญาตการสืบค้นเทมเพลต จากนั้นคลิกชื่อเสมือน คลิกประเภทใหม่ แล้วเรียกมันว่าชื่อเทมเพลต
ddd ไฟล์ที่เกี่ยวข้องคือ aaa.xml ของเรา
จากนั้นเปิดใน IE: http://your machine name/ccc/ddd
คุณเห็นอะไร? ใช่ มันเป็นเนื้อหาที่ส่งออกโดยไฟล์ xml ของคุณในระหว่างการสืบค้น SQL
อะไรไม่ออก? เปิด "Internet Information Services (IIS) Manager" ของคุณแล้วเลือก "Web Extension Services"
จากนั้นเลือก "ส่วนขยาย ISAP ที่ไม่รู้จักทั้งหมด" เพื่ออนุญาต ตอนนี้โอเคไหม?
เอาล่ะ มาถึงขั้นตอนที่สำคัญที่สุด ขั้นตอนที่ 3 - วิธีเรียกไฟล์ XML ที่สร้างขึ้นแบบไดนามิกใน VS.net
ก่อนอื่น เราต้องสร้างชุดข้อมูลที่ไม่มีโครงสร้างที่ว่างเปล่า 1 จากนั้นในซอร์สโค้ด this.dataSet1.Locale = new System.Globalization.CultureInfo("zh-CN");
เพิ่ม this.dataSet1.ReadXml("http://your machine name/ccc/ddd");
ขอแสดงความยินดี ตอนนี้คุณสามารถใช้ไฟล์ XML ที่สร้างขึ้นแบบไดนามิกนี้เป็นชุดข้อมูลแบบอ่านอย่างเดียวได้แล้ว