参考代码如下:
public class Examination { #region 批量插入一个sheet的专业对应的学科 /// <summary> /// 批量插入一个sheet的专业对应的学科 /// </summary> /// <param name="dt">传入的专业学科信息DataTable</param> public void ImportExamination(DataTable dt) { using (SqlConnection connection = ConnectionFactory.GetConn()) { using (SqlBulkCopy bulkCopy = new SqlBulkCopy(connection)) { //表名 bulkCopy.DestinationTableName = "Examination"; bulkCopy.ColumnMappings.Add(0, "MajorID");//专业id------------很吃惊的一件事儿是 此处对数据库列名大小写敏感 之前因为写成MajorId一直报错 bulkCopy.ColumnMappings.Add(1, "Courseid");//学科id bulkCopy.ColumnMappings.Add(2, "TestNum");//考题数目 bulkCopy.WriteToServer(dt); } } } #endregion }
第一 注意数据类型 数据长度,比如我在插入一个数据的时候 遇到了数据库字段只有20长度 汉子却有11个一直报错的问题
第二 对应数据库表里的字段名 大小写不能有出入。