2013-03-09 19 views
2

我有一個插入查詢將文本框的值插入到數據庫表中。這是一個信用卡號碼文本框,所以我只想存儲號碼的最後4位數字。我怎樣才能做到這一點?我會告訴你我現在所擁有的:如何只將文本框條目的最後4位數字插入到數據庫中?

cmd.Parameters.Add("@Number", System.Data.SqlDbType.VarChar, 50).Value = txtCardNumber.Text; 

我已經嘗試添加「-4」之後,卻不允許。任何幫助將不勝感激。

注意:否則所有東西都插入正確。

回答

4

使用String.Substring()方法

檢索從這個實例子。子字符串從 指定的字符位置開始。

cmd.Parameters.Add("@Number", System.Data.SqlDbType.VarChar, 50).Value = txtCardNumber.Text.Substring(txtCardNumber.Text.Length - 4); 
+0

使用具有一長度的第二過載的是在這種情況下的冗餘。 – Oded 2013-03-09 19:05:37

+0

@付款是的,謝謝。更新.. – 2013-03-09 19:07:03

+0

我刪除了我最後的意見,但再次感謝。這工作完美。 – 2013-03-09 19:13:18

4

這是基本的字符串操作。

要得到任何字符串的最後四個字符:

theString.Substring(theString.Length - 4) 

我建議你在上String類中定義的不同的方法和屬性好好看看。

2

這個怎麼樣?

cmd.Parameters.Add("@Number", System.Data.SqlDbType.VarChar, 50).Value = txtCardNumber.Text.Substring(txtCardNumber.Text.Length - 4) 

,或者您也可以做到這一點雖然不是最好的解決方案..

var last4digits = (long.parse(txtCardNumber.Text)%10000).ToString(); 

cmd.Parameters.Add("@Number", System.Data.SqlDbType.VarChar, 50).Value = last4digits; 
+0

Gaah。解析爲只是轉換回字符串? _shudder_ – Oded 2013-03-09 19:17:39

+0

只是解決問題的另一種方法,但不是最好的方法... – nsconnector 2013-03-09 19:18:49

相關問題