我一直在试图找到一种方法来将数据类型字符串转换为nvarchar,同时我从Excel电子表格中导入数据。到目前为止,我有这段代码通过C#导入数据。将字符串转换为nvarchar(将excel导入到mssql)
// Connection String to Excel Workbook,Replace DataSource value to point to your excel file location
string excelConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\\Folder\\Folder\\Excel_File.xls ;Extended Properties=Excel 8.0";
// Create Connection to Excel Workbook
using (OleDbConnection connection =
new OleDbConnection(excelConnectionString))
{
OleDbCommand command = new OleDbCommand
("Select * FROM [Sheet1$]", connection);
connection.Open();
// Create DbDataReader to Data Worksheet
using (DbDataReader dr = command.ExecuteReader())
{
// SQL Server Connection String
string sqlConnectionString = "Data Source=localhost;Initial Catalog=DatabaseName;Integrated Security=True";
// Bulk Copy to SQL Server
using (SqlBulkCopy bulkCopy =
new SqlBulkCopy(sqlConnectionString))
{
bulkCopy.DestinationTableName = "Table_Name";
bulkCopy.WriteToServer(dr);
MessageBox.Show("Data Exported To Sql Server Successfully");
}
}
我一直在寻求方法来从字符串转换为nvarchar但我已经找到了唯一的例子仅仅是用于将从文本框或通过控制台收集字符串。尽管日期类型中有一列,但我已经在MSSQL中得到了补偿。
如果有人可以给我一个我应该做的事情的示例代码,将不胜感激。
什么是错误? – Romoku
C#字符串是像nvarchar一样的Unicode,是不是?我想我不明白为什么需要转换。也许我不像我想的那么了解? –
那么,当我尝试导入它告诉我“来自数据源的字符串类型的给定值不能转换为指定的目标列的类型nvarchar”。 – KuyaBraye