上次寫的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
{}
}