C# 将一些csv列数据导入SQL Server 2008 R2(以编程方式)

C# 将一些csv列数据导入SQL Server 2008 R2(以编程方式),c#,visual-studio-2008,csv,import,sql-server-2008-r2,C#,Visual Studio 2008,Csv,Import,Sql Server 2008 R2,我想一次性将CSV数据插入SQL Server数据库。我知道,但我只需要选择一些字段。所以我试着像下面这样插入到- try { OleDbConnection myOleDbConnection = new OleDbConnection("Provider=SQLOLEDB;Data Source=ServerName;Integrated Security=SSPI;Initial Catalog=DBName;User ID=sa;Password=password"); m

我想一次性将CSV数据插入SQL Server数据库。我知道,但我只需要选择一些字段。所以我试着像下面这样插入到-

try
{
   OleDbConnection myOleDbConnection = new OleDbConnection("Provider=SQLOLEDB;Data Source=ServerName;Integrated Security=SSPI;Initial Catalog=DBName;User ID=sa;Password=password");

   myOleDbConnection.Open();

   string strSQL = null;
   strSQL = "INSERT INTO " + strTable + "(" + M_ItemCode + "," + M_ItemDesc + "," + M_UOM + ") " + "SELECT " + M_ItemCode + "," + M_ItemDesc + "," + M_UOM + " FROM [Text;DATABASE=E:\temp\\Item.csv]" ;

   OleDbCommand cmd = new OleDbCommand(strSQL, myOleDbConnection);
   return (cmd.ExecuteNonQuery() == 1);
}
catch (Exception ex)
{
    Common.ShowMSGBox(ex.Message, Common.gCompanyTitle, Common.iconError);
    return false;
}
我弄错了

“对象名称”文本无效;数据库=E:\temp\Item.csv'


我的语法错了吗?

为什么要通过代码来完成?sql server具有内置功能,可以为您完成这些工作。有关详细信息,请参阅此线程。此外,请查看大容量导入的格式文件。这里有一些信息:我使用SqlBulkCopy列映射。