上次寫的bcp導入是在有sqlserver環境下進行的遠端導入,由於專案需要我做了修改,因為在開發專案中,遇到對大型資料庫導入導出處理,客戶要求環境是web伺服器、文件伺服器和資料庫伺服器搭配,web伺服器上不允許安裝sqlserver,在沒有bcp的環境下導入大批量的文字數據,不能直接呼叫cmd指令進行導入,必須引用外部bcp.exe檔來進行資料導入,引用時必須將sqlserver的bcp.exe和bcp.rll兩個檔案複製到web伺服器上,如下這兩個檔案我都放在專案中的compant資料夾裡:
using System;
using System.Data;
using System.Data.SqlClient;
using System.Diagnostics;
程式碼
private void Page_Load(object sender, System.EventArgs e)
{
// 在此處放置使用者程式碼以初始化頁面
Process p = new Process();
p.StartInfo.FileName = Server.MapPath("compant/bcp.exe");
p.StartInfo.UseShellExecute = false;
//@必須加上,不然特殊字元會被自動過濾掉
p.StartInfo.Arguments = @"Test..BcpTest in D:temp.txt -S -Usa -P1 -c -t," ;
try
{
p.Start();
p.WaitForExit();
p.Close();
}
catch
{}
}