[英]Converting between SQL char and C#
如果我想從C#插入char(2)類型的數據庫列。 我將在C#中使用哪種數據類型?
如果使用以下代碼:
private static SqlParameter addParameterValue(string parameterName, ? parameterValue, SqlCommand command)
{
SqlParameter parameter = new SqlParameter(parameterName, SqlDbType.Char);
parameter.Value = parameterValue;
command.Parameters.Add(parameter);
return parameter;
}
我會給parameterValue什么類型的?
當parameterValue是string類型時,我已經有這樣的方法,所以當告訴SqlDbType.Char和SqlDbType.Varchar之間的區別時,這可能是個問題
char
, varchar
, nchar
, nvarchar
實際上是字符串
size
有助於確定字符串的長度......
順便說說
char
有一個固定的長度,所以如果你想在char(2)
有"1"
,那么內容將是實際的"1 "
varchar(2)
將為"1"
n
部分代表unicode,因此這些字段中的所有內容都將使用Unicode。
通常我們使用nvarchar
來保存數據上的一些空間,就像你有一個char(250)
,數據庫將始終保存全長,因為空varchar(250)
將不會是什么。
在我們的編程語言中,我們然后使用填充來執行char
所做的事情,例如,在C#中
"1".PadLeft(2);
"1".PadRight(2);
將分別輸出" 1"
和"1 "
。
如果string
是2個字符或更短,則string
將正常工作
嘗試使用AddWithValue方法並將其作為字符串,
它只是一行。 無需單獨的方法。
command.Parameters.AddWithValue(parameterName, parameterValue);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.