簡體   English   中英

在SQL char和C#之間轉換

[英]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之間的區別時,這可能是個問題

charvarcharncharnvarchar實際上是字符串

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.

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