首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在将excel导入数据库时添加额外的列?

如何在将excel导入数据库时添加额外的列?
EN

Stack Overflow用户
提问于 2012-11-12 14:43:55
回答 1查看 736关注 0票数 1

我正在导入一个excel到sql server数据库中,在excel中有一个名为FlightNumber的列,格式为AI-2000,AI-2564等。我在数据库中有FlightNumber列,但也有另一个名为FlightId的列,它的值应该来自excel的flightnumber (通过删除前3个字符),例如:如果excel有FlightNumber: AI-2032,则数据库中的FlightId值应为2032。我该怎么做呢?我是一个初学者,所以你可能需要解释一些代码。

这就是我阅读excel的方式:

代码语言:javascript
复制
DataTable dt7 = new DataTable();
dt7.Load(dr);
DataRow[] ExcelRows = new DataRow[dt7.Rows.Count];
DataColumn[] ExcelColumn = new DataColumn[dt7.Columns.Count];

DataRow[] ExcelRows = new DataRow[dt7.Rows.Count];
//=================================================
for (int i1 = 0; i1 < dt7.Rows.Count; i1++)
 {
   if (dt7.Rows[i1]["PP NO"] == null)
      dt7.Rows[i1]["PP NO"] = 0;
 }

我还使用SqlBulkCopy与列映射一起导入

EN

回答 1

Stack Overflow用户

发布于 2012-11-12 14:56:11

尝尝这个

代码语言:javascript
复制
DataTable dtone = new DataTable();
dtone.Columns.Add("idNumber");
dtone.Columns.Add("idOnly", typeof(string), " substring(idNumber, 4, 100)");

dtone.Rows.Add("AI-2000");
dtone.Rows.Add("AE-2001");
dtone.Rows.Add("AF-2002");
dtone.Rows.Add("AH-2003");

这里的第三个参数是DataColumn.Expression,它根据您的每个现有列值指定默认值,以了解有关此visit here的更多信息

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13339362

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档