您的当前位置:首页正文

excel数据存入sqlserver过程中,遇到Datetime的格式问题。

2020-11-09 来源:汇智旅游网

先讲一下我实现的大致思路: 1 读取excel数据,赋值到datatable中,然后在页面上显示 细节描述:有一些列是存到数据库时要是datetime格式的,我在赋值到datatable时也是做 如下处理的 DataColumn dtColumn = new DataColumn(); dtColumn.DataType =System.Ty

先讲一下我实现的大致思路:

<1>读取excel数据,赋值到datatable中,然后在页面上显示

细节描述:有一些列是存到数据库时要是datetime格式的,我在赋值到datatable时也是做 如下处理的

DataColumn dtColumn = new DataColumn();

dtColumn.DataType =System.Type.GetType("System.DateTime");

<2>将datatable存到sqlserver中

2.1使用带参数的存储过程,这种方法我已经实现(一行一行插入的,遇到datetime那一列 也是一样可以插入的,并可以在sqlserver中查看)

2.2在使用SqlBulkCopy时(想尽可能提高效率),遇到如下错误

实现细节描述:

string connStr = ConfigurationManager.ConnectionStrings["connStr"].ConnectionString;
 using(SqlConnection conn = new SqlConnection(connStr))
 {
 conn.Open();
 using (SqlBulkCopy bulkCopy = new SqlBulkCopy(conn))
 {
 bulkCopy.DestinationTableName = "dbo.*****";
 try
 {
 bulkCopy.WriteToServer(dt);
 }
 catch (Exception ex)
 {

 Response.Write(ex.Message);
 }
 
 }
 }

遇到如下错误:

The given value of type String from the data source cannot be converted to type datetime of the specified target column.RunTime

现在就是卡在使用sqlbulkcopy上,求大家支招。小弟不胜感激

显示全文