如何在数据表列中添加前导零

本文关键字:添加 数据表 | 更新日期: 2023-09-27 18:18:54

如果长度小于6位,我试图在可数据表列值前面添加零。

示例:我在数据表中有一个列"SRNumber",值为123、2345、56、34523等,并希望我的结果像这样000123、002345、000056、034523。

注意:我想操纵数据表中的数据,而不是在检索数据的sql查询中。我已经看到了解决方案,我们可以在字符串或变量中添加前导零,但在我的情况下,我想在数据表列中的所有值都这样做。

如何在数据表列中添加前导零

好的,我在@eddie_cat的回答的帮助下弄明白了。我是这么做的。

foreach (DataRow row in table.Rows)
{
      row["SRNumber"] = row["SRNumber"].ToString().PadLeft(6, '0');
}
table.AcceptChanges();

这里,"SRNumber"是列名,我在其中添加前导零。

eddie_cat所说:循环遍历值并更新所需字段

foreach(DataRow dr in mydatatable)
{
      dr[myfield] = String.Format("{0:0000}", int.parse(dr[myfield]))
}

注意,您应该首先将字符串转换为int型。如果dr[myfield]dbnull,我使用的示例int.parse(...)可能会抛出异常。

我不确定你是在寻找SQL解决方案还是c#解决方案,所以我将提供SQL,因为其他人已经给了你c#解决方案:

 UPDATE MYTABLE
 SET SRNumber = RIGHT('000000' + SRNumber,6)
 WHERE len(SRNumber) < 6