私はintを持っていますか?null または何らかの値を持つ型の値。パラメータ化されたクエリを使用して挿入ステートメントを実行し、それに応じて挿入したいと考えています。
int? val1=null;
SqlCeCommand cmd;
string insert = "insert into table(col1)values(@col_1)";
cmd = new SqlCeCommand();
cmd.CommandText = insert;
cmd.Parameters.AddWithValue("@col_1", val1 ?? Convert.ToInt32(DBNull.Value)));
cmd.Connection = cn1;
cn1.Open();
cmd.ExecuteNonQuery();
cn1.Close();
このコードは、フォーマット例外エラーをスローします。私も試してみました
cmd.Parameters.AddWithValue("@col_1", (!val1.HasValue) ? val1 : Convert.ToInt32(DBNull.Value));
どのようにすればよいですか?