Excel报告到数据库sql server 2005

我每天都给Excel工作表,想上传到一个现有的数据库,完全相同的列名,我想在SQL Server 2005中做到这一点,但后来我认为这将是更容易创build一个asp.net程序可以自动做到这一点,这样pipe理者可以自己做。

我会使用批量插入吗?

以及如何将excel表导入数据表?

编辑:我有第一部分工作

handling time 1:12:53 1:06:29 0:10:58 0:13:33 1:15:45 0:41:19 

这是我的Excel表中的一个列(hh:mm:ss)

但是,当我做大容量复制到一个varchar字段

我明白了

 12/30/1899 1:12:53 AM 12/30/1899 1:06:29 AM 12/30/1899 12:10:58 AM 12/30/1899 12:13:33 AM 12/30/1899 1:15:45 AM 12/30/1899 12:41:19 AM 

是的,我会build议你使用SqlBulkCopy

 DbProviderFactory factory = DbProviderFactories.GetFactory("System.Data.OleDb"); DbDataAdapter adapter = factory.CreateDataAdapter(); DbCommand selectCommand = factory.CreateCommand(); selectCommand.CommandText = "SELECT ColumnNames FROM [Sheet1$]"; DbConnection connection = factory.CreateConnection(); connection.ConnectionString = connectionString; selectCommand.Connection = connection; adapter.SelectCommand = selectCommand; DataTable dtbl = new DataTable(); adapter.Fill(dtbl); if (dtbl.Rows.Count > 0) { using (SqlBulkCopy bulkCopy = new SqlBulkCopy(destConnection)) { bulkCopy.ColumnMappings.Add("ColumnName", "ColumnName"); bulkCopy.ColumnMappings.Add("ColumnName", "ColumnName"); bulkCopy.DestinationTableName = "DBTableName"; bulkCopy.WriteToServer(dtblNew); } }