首页 > 解决方案 > 将数据类型从 Excel 文件转换为 SQL Server

问题描述

我正在使用存储过程将 Excel 数据导入 ASP.NET MVC 应用程序中的 SQL Server。问题是当我运行应用程序并上传文件时,类型为“日期”的数据转换为(0001-01-01)类型为“时间”的数据转换为(00:00:00.000000)这里是我的存储过程:

CREATE PROCEDURE usp_InsertNewEmployeeDetails1
    (@Date_d_arrivée DATE = NULL,  
     @heure_d_arrivée TIME = NULL, 
     @Poids_cam DECIMAL(18,2) = NULL,  
     @Id_cam INT = NULL,  
     @Id_qualité INT = NULL)  
AS 
BEGIN
    INSERT INTO Réception_camions([Date d'arrivée], [heure d'arrivée], Poids_cam, Id_cam, Id_qualité)  
    VALUES (@Date_d_arrivée, @heure_d_arrivée, @Poids_cam, @Id_cam, @Id_qualité)  
END

这是我的控制器代码的一部分:

var empDetails = from a in excelFile.Worksheet<Réception_camions>(sheetName) select a;

foreach (var a in empDetails)
{
    if (a.Date_d_arrivée != null )
    {
        DateTime Date = (a.Date_d_arrivée);

        TimeSpan heure = (a.heure_d_arrivée);
        decimal Pd = a.Poids_cam;
        int Id_qualité = Convert.ToInt32(a.Id_qualité);

        int result = PostExcelData(Date, heure, a.Poids_cam, a.Id_cam, a.Id_qualité);
        //...
    }
}

public int PostExcelData(DateTime Date_d_arrivée, TimeSpan heure_d_arrivée, Decimal Poids_cam, int Id_cam, int Id_qualité)
{
    Réception_phosphateEntities DbEntity = new Réception_phosphateEntities();

    var InsertExcelData = DbEntity.usp_InsertNewEmployeeDetails1(Date_d_arrivée, heure_d_arrivée, Poids_cam, Id_cam, Id_qualité );

    return InsertExcelData;
}

标签: c#sql-serverasp.net-mvc

解决方案


推荐阅读