C#中如何向資料庫一個Int欄位新增空值?
阿新 • • 發佈:2019-02-07
例如員工表:
欄位名 資料型別
姓名 nvarchar
性別 int
其中“性別”是允許為空的,當新員工在註冊自己資訊時沒有在textBox這些控制元件中填這項的時候,如何往資料庫插入null值?
解答:(ClementDik(劍問天))
1. 我個人會更傾向於將-1 定義為“未輸入”,這樣在讀取的時候也可以少一些麻煩。當然,這一點不在樓主的討論範圍內。
2. 如前面的人所說,如果想向DB中寫如NULL值,那麼用Systme.DBNull.Value。而不要用“null”或空串。
3. 建議樓主將那個函式寫為如下格式:
public void RegistMember(string name , string sex)
{
// 轉換輸入的字元。
object objSexValue = null;
if(string.IsNullOrEmpty(sex)
{
objSexValue = DBNull.Value;
}
else
{
objSexValue = Convert.ToInt16(sex);
}
// 用於給欄位賦值的程式碼。
}