簡體   English   中英

如何在DataTable列中添加前導零

[英]How to add leading zeros in DataTable columns

我試圖在長度小於6位的情況下在數據表列值前面添加零。

例如:我在數據表中有一個列“SRNumber”,其值為123,2345,56,3452等,並希望得到我的結果,如000123,002345,000056,034523。

注意:我想操縱Datatable中的數據而不是在sql查詢中檢索數據。 我已經看到了我們可以將前導零添加到字符串或變量的解決方案,但在mycase中我想為數據表列中的所有值執行此操作。

好吧,我在@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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM