欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

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

程序员文章站 2022-03-07 17:31:42
...

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

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

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

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

DataColumn dtColumn = new DataColumn();

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

将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上,求大家支招。小弟不胜感激