0
蔭試圖插入散裝的excel到SQLSqlBulkCopy的給出浮充轉換(asp.net C#)
sqlBulk.WriteToServer(dReader);
誤差給出錯誤
String類型的數據源中的給定值不能 轉換爲指定目標列的float類型。
蔭使用以下代碼
System.Data.SqlClient.SqlConnection strConnection;
strConnection = new System.Data.SqlClient.SqlConnection("Data Source=L06DPSGCD0001;Initial Catalog=ProductionEfficiency;User ID=sample;Password=sample");
string path = ("C:\\Users\\s3802616\\Desktop\\" + (FileUpload1.FileName));
System.Diagnostics.Debug.WriteLine("C:\\Users\\s3802616\\Desktop\\" + (FileUpload1.FileName));
string excelConnectionString = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + path + ";Extended Properties=" + "\"" + "Excel 12.0;HDR=YES;" + "\"";
//Create Connection to Excel work book
OleDbConnection excelConnection = new OleDbConnection(excelConnectionString);
//Create OleDbCommand to fetch data from Excel
OleDbCommand cmd = new OleDbCommand("Select [Model],[Process],[STD_Hours],[UOM],[Section] from [Sheet1$]", excelConnection);
//OleDbCommand cmd = new OleDbCommand("Select * from [Sheet1$]", excelConnection);
excelConnection.Open();
strConnection.Open();
OleDbDataReader dReader;
dReader = cmd.ExecuteReader();
SqlBulkCopy sqlBulk = new SqlBulkCopy(strConnection);
//Give your Destination table name
sqlBulk.DestinationTableName = "dbo.tblProcessStdHours";
sqlBulk.WriteToServer(dReader);
excelConnection.Close();
strConnection.Close();
lblStatus.Text = "Uploaded Successfully";
PLS推薦。
我也試過,它給出了{「從數據源的類型字符串的給定值不能轉換爲指定目標列的類型nvarchar」} –
嘗試與varchar –
我將所有更改爲一個一個varchar,最後它顯示「收到來自bcp客戶端的colid 1的無效列長度」。我認爲這是因爲Sl。在sql中自動生成的列。如何使它在Excel中或我需要從Sql中刪除「Sl」序列號。 –