【问题标题】:SqlCeCommand nullable valuesSqlCeCommand 可为空的值
【发布时间】:2011-05-11 00:42:27
【问题描述】:

我的代码:

SqlCeConnection sql = new SqlCeConnection(@"Data Source=C:\DB.sdf");
sql.Open();
cmd = new SqlCeCommand("INSERT INTO xxx(aaa) VALUES(@aaa)", sql);
String param = null;  //doesn't work
//String param = "blah" //works
cmd.Parameters.AddWithValue("@aaa", param);
cmd.ExecuteNonQuery(); //(1)
sql.Close();

(1) 当param 为空时抛出异常。数据库允许列 aaa 中的值为空。如何将 null 插入到表 xxx 中?

例外:
Parameterized query 'INSERT INTO xxx(aaa) VALUES(@aaa)' expects a parameter value which was not supplied.

【问题讨论】:

    标签: c# visual-studio-2010 sql-server-ce


    【解决方案1】:

    尝试改用DBNull.Value

    var param = DBNull.Value;
    

    【讨论】:

      【解决方案2】:

      使用

      var param = DBNull.Value;
      

      null 与 DBNull 不同

      【讨论】:

      • 可以将 DBNull.Value 转换为 String 吗?
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-11-13
      • 2010-10-10
      • 2012-04-13
      • 1970-01-01
      • 1970-01-01
      • 2015-11-18
      相关资源
      最近更新 更多