วิธีการนำเข้า XML ลงใน SQL Server ด้วยคอมโพเนนต์การโหลด XML จำนวนมาก

การแปลบทความ การแปลบทความ
หมายเลขบทความ (Article ID): 316005 - ผลิตภัณฑ์ที่เกี่ยวข้องในบทความนี้
ขยายทั้งหมด | ยุบทั้งหมด

เนื้อหาบนหน้านี้

สรุป

สามารถโหลดข้อมูลที่แสดงไว้ใน XML ลงในแบบ Microsoft SQL ฐานข้อมูล server 2000 โดยใช้คอมโพเนนต์การโหลด XML จำนวนมาก บทความนี้ จัดเค้าร่างขั้นตอนที่คุณต้องการติดตามข้อมูล XML โหลดลงในตาราง ที่ มีอยู่แล้วในฐานข้อมูล

หมายเหตุ ถ้าคุณกำลังใช้ Microsoft SQL Server 2005 ดูหัวข้อ "XML จำนวนมากโหลดอย่าง" ใน SQL Server 2005 หนังสือออนไลน์

ความต้องการ

เมื่อต้องใช้ขั้นตอนในบทความนี้คุณจำเป็นต้อง:
  • เว็บรุ่น 1 XML สำหรับ SQL Server 2000 (SQLXML), หรือ ในภายหลัง
ความรู้ก่อนหน้านี้จำเป็นต้องใช้:
  • ความรู้ของ XML

สร้างตารางเพื่อรับข้อมูล

ใช้ขั้นตอนต่อไปนี้เพื่อสร้างตารางที่จะได้รับข้อมูล ที่ประมวลผล XML จำนวนมากการโหลดคอมโพเนนต์
  1. สร้างฐานข้อมูลชื่อMyDatabaseใน SQL Server
  2. เปิดตัววิเคราะห์คำถาม SQL และจากนั้น เปลี่ยนแปลงฐานข้อมูลMyDatabase
  3. สร้างตารางลูกค้าในMyDatabaseโดยการเรียกใช้คำสั่ง SQL ต่อไปนี้ในตัววิเคราะห์คำถาม:
    USE MyDatabase
    CREATE TABLE Customer (
       CustomerId INT PRIMARY KEY,
       CompanyName NVARCHAR(20),
       City NVARCHAR(20))
    					

สร้างแฟ้มแหล่งข้อมูล XML

นี่คือรหัสแหล่งที่มาของข้อมูลตัวอย่าง วาง XML นี้ใน Notepad และจากนั้น บันทึกแฟ้มเป็น C:/Customers.xml
<ROOT>
  <Customers>
    <CustomerId>1111</CustomerId>
    <CompanyName>Sean Chai</CompanyName>
    <City>NY</City>
  </Customers>
  <Customers>
    <CustomerId>1112</CustomerId>
    <CompanyName>Tom Johnston</CompanyName>
    <City>LA</City>
  </Customers>
  <Customers>
    <CustomerId>1113</CustomerId>
    <CompanyName>Institute of Art</CompanyName>
  </Customers>
</ROOT>
				

สร้างไฟล์การแม็ปเค้าร่าง

แฟ้มต่อไปนี้คือ แฟ้มที่คุณใช้รูปแบบของแผนผัง แหล่งข้อมูล XML เป็นรูปแบบของตารางลูกค้าในฐานข้อมูล วาง XML นี้ในแผ่นจดบันทึก และจากนั้น บันทึก แฟ้มเป็น C:/Customermapping.xml
<?xml version="1.0" ?>
<Schema xmlns="urn:schemas-microsoft-com:xml-data" 
        xmlns:dt="urn:schemas-microsoft-com:xml:datatypes"  
        xmlns:sql="urn:schemas-microsoft-com:xml-sql" > 

   <ElementType name="CustomerId" dt:type="int" />
   <ElementType name="CompanyName" dt:type="string" />
   <ElementType name="City" dt:type="string" />

   <ElementType name="ROOT" sql:is-constant="1">
      <element type="Customers" />
   </ElementType>

   <ElementType name="Customers"  sql:relation="Customer">
      <element type="CustomerId"  sql:field="CustomerId" />
      <element type="CompanyName" sql:field="CompanyName" />
      <element type="City"        sql:field="City" />
   </ElementType>

</Schema>
				

สร้างแบบ VBScript โปรแกรมจะดำเนินการคอมโพเนนต์การโหลด XML จำนวนมาก

นี้คือสคริปต์ที่ใช้คอมโพเนนต์โหลดจำนวนมาก XML เมื่อต้องการ แทรกเร็กคอร์ดสามที่คุณสร้างไว้ใน "สร้างในแฟ้มข้อมูล XML ต้นฉบับ" หัวข้อลงในตารางที่คุณสร้างไว้ใน "สร้างตารางเพื่อได้รับการข้อมูล" หัวเรื่อง โดยใช้การแม็ปเค้าร่างที่กล่าวถึงใน "สร้างการแมป Schema ส่วนหัวของแฟ้ม" วางรหัส VBScript นี้ลงในแผ่นจดบันทึก และจากนั้น บันทึกแฟ้มเป็น C:\Insertcustomers.vbs
Set objBL = CreateObject("SQLXMLBulkLoad.SQLXMLBulkLoad")
objBL.ConnectionString = "provider=SQLOLEDB.1;data source=MySQLServer;database=MyDatabase;uid=MyAccount;pwd=MyPassword"
objBL.ErrorLogFile = "c:\error.log"
objBL.Execute "c:\customermapping.xml", "c:\customers.xml"
Set objBL = Nothing
				
แก้ไขข้อมูลประจำตัวของสายอักขระในบรรทัดที่สองของรหัสเพื่อให้สามารถสคริปต์ ทำงานกับการติดตั้ง SQL Server ของคุณ ถ้าคุณไม่สามารถแก้ไขบรรทัดที่ 2, ต่อไปนี้ข้อความแสดงข้อผิดพลาดเกิดหลังจากที่คุณเรียกใช้สคริปต์:
ข้อผิดพลาดในการเชื่อมต่อกับแหล่งข้อมูล

VBScript เรียกใช้ โปรแกรม

เรียกใช้โปรแกรม VBScript C:\Insertcustomers.vbs เมื่อต้องแทรก ระเบียนลูกค้าที่สามลงในตารางลูกค้า

ตรวจสอบการทำงาน

ในตัววิเคราะห์คำถาม SQL สลับไปยังฐานข้อมูลMyDatabaseและจากนั้น เรียกใช้แบบสอบถามนี้:
SELECT * FROM Customer
				
หมายเหตุที่ระเบียนสามที่สร้างขึ้นในหัวข้อ "การสร้างแฟ้มแหล่งข้อมูล XML" อยู่ในตารางลูกค้า

เทคนิคอื่น

คอมโพเนนต์การโหลด XML จำนวนมากมีความสามารถในการ:
  • การแมปเอกสาร XML ไปยังตารางการคูณ โดยใช้การ ความสัมพันธ์ที่ระบุในแฟ้ม XML schema
  • สร้างเค้าร่างของตารางก่อนที่จะโหลดจำนวนมาก
  • จำนวนมากที่โหลดจากการส่งกระแสข้อมูล
  • จำนวนมากที่โหลดในคอลัมน์มากเกินไป



ข้อมูลอ้างอิง

หนังสือ SQLXML ออนไลน์ หัวข้อ: "ดำเนินการจำนวนมากโหลดของ XML ข้อมูล"

คุณสมบัติ

หมายเลขบทความ (Article ID): 316005 - รีวิวครั้งสุดท้าย: 31 ธันวาคม 2555 - Revision: 6.0
ใช้กับ
  • Microsoft SQL Server 2000 Standard Edition
  • Microsoft SQL Server 2000 64-bit Edition
  • Microsoft SQL Server 2005 Standard Edition
  • Microsoft SQL Server 2005 Developer Edition
  • Microsoft SQL 2005 Server Enterprise
  • Microsoft SQL Server 2005 Express Edition
  • Microsoft SQL 2005 Server Workgroup
Keywords: 
kbsqlsetup kbhowtomaster kbmt KB316005 KbMtth
แปลโดยคอมพิวเตอร์
ข้อมูลสำคัญ: บทความนี้แปลโดยซอฟต์แวร์การแปลด้วยคอมพิวเตอร์ของ Microsoft แทนที่จะเป็นนักแปลที่เป็นบุคคล Microsoft มีบทความที่แปลโดยนักแปลและบทความที่แปลด้วยคอมพิวเตอร์ เพื่อให้คุณสามารถเข้าถึงบทความทั้งหมดในฐานความรู้ของเรา ในภาษาของคุณเอง อย่างไรก็ตาม บทความที่แปลด้วยคอมพิวเตอร์นั้นอาจมีข้อบกพร่อง โดยอาจมีข้อผิดพลาดในคำศัพท์ รูปแบบการใช้ภาษาและไวยากรณ์ เช่นเดียวกับกรณีที่ชาวต่างชาติพูดผิดเมื่อพูดภาษาของคุณ Microsoft ไม่มีส่วนรับผิดชอบต่อความคลาดเคลื่อน ความผิดพลาดหรือความเสียหายที่เกิดจากการแปลเนื้อหาผิดพลาด หรือการใช้บทแปลของลูกค้า และ Microsoft มีการปรับปรุงซอฟต์แวร์การแปลด้วยคอมพิวเตอร์อยู่เป็นประจำ
ต่อไปนี้เป็นฉบับภาษาอังกฤษของบทความนี้:316005

ให้ข้อเสนอแนะ

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com