การนำเข้า bcp ที่ฉันเขียนครั้งล่าสุดเป็นการนำเข้าระยะไกลในสภาพแวดล้อม sqlserver ฉันทำการแก้ไขเนื่องจากความต้องการของโครงการ เนื่องจากในโครงการพัฒนา ฉันพบการประมวลผลการนำเข้าและส่งออกของฐานข้อมูลขนาดใหญ่ เซิร์ฟเวอร์ ไฟล์เซิร์ฟเวอร์ และการกำหนดค่าเซิร์ฟเวอร์ฐานข้อมูล sqlserver จะไม่ได้รับอนุญาตให้ติดตั้งบนเว็บเซิร์ฟเวอร์ เมื่อนำเข้าข้อมูลข้อความจำนวนมากในสภาพแวดล้อมที่ไม่มี bcp คุณจะไม่สามารถเรียกใช้คำสั่ง cmd เพื่อนำเข้าได้โดยตรง คุณต้องอ้างอิงข้อมูลภายนอก ไฟล์ bcp.exe สำหรับการนำเข้าข้อมูล เมื่ออ้างอิง sqlserver จะต้องคัดลอกสองไฟล์ bcp.exe และ bcp.rll ไปยังเว็บเซิร์ฟเวอร์ ฉันใส่สองไฟล์ต่อไปนี้ไว้ในโฟลเดอร์ compant ของโครงการ:
การใช้ระบบ;
ใช้ System.Data;
โดยใช้ System.Data.SqlClient;
โดยใช้ระบบการวินิจฉัย
รหัส
โมฆะส่วนตัว Page_Load (ผู้ส่งวัตถุ System.EventArgs e)
-
//ใส่รหัสผู้ใช้ที่นี่เพื่อเริ่มต้นเพจ
กระบวนการ p = กระบวนการใหม่ ();
p.StartInfo.FileName = Server.MapPath("compant/bcp.exe");
p.StartInfo.UseShellExecute = เท็จ;
//@ต้องเพิ่ม ไม่เช่นนั้นอักขระพิเศษจะถูกกรองออกโดยอัตโนมัติ
p.StartInfo.Arguments = @"Test..BcpTest ใน D:temp.txt -S -Usa -P1 -c -t," ;
พยายาม
-
p.Start();
p.WaitForExit();
p.ปิด();
-
จับ
-
}